A trade functionally is a sale and the law still applies. Goods were traded for goods. Unfortunately, only one side received goods that had value. Since this car cannot be registered without substantial work, I don't see how you received any value for your BMW. If you went to a dealership and came to an agreement to trade your BMW for a cute Yugo but they took your BMW and disappeared, wouldn't you complain to someone?
I can understand being the nice guy and not wanting to be "that guy". I find it very hard to believe that the guy you got the car from was completely unaware that the car could not be registered in California as is and had no idea what would be involved in getting it CA legal. The guy moved here from Texas, registered all his other cars and never bothered to try to register this car in California? I'm guessing the car was advertised for sale somewhere. At no point did anyone else who looked at this car notice the smog issues and failed to tell the seller?
Due to the seller certainly being aware of the smog issues, it sounds like he found a sucker to unload this thing. Cars (Triumph or otherwise) that won't pass smog are parts vehicles and priced as such. If your BMW wasn't worth more than $2-300, then you probably got a fair deal in this trade. Otherwise, you were taken advantage of and probably should seek redress.
There is an active British car community in San Diego and you might try seeing if any of those guys can help. British car day is a good sized event that happens later in the summer.
San Diego British Car Day Another alternative is the So Cal Triumph Owners Assn
Classifieds where you can buy yourself a 71 Spit for $500, drop your drivetrain and other parts into it and never worry about smog again. There's another guy with an essentially worthless later Spit on there with a Toyota motor in it. Another fun smog problem. Maybe he has the parts you need. At worst, the guy who made his problem your problem should help shoulder the load of this problem he foisted upon you.