Tks Raddy and Min, this IS a toughie for most people I'm sure.
I'm thinking that what I choose to do depends on how I see things a few years out. I'd like him to resolve his own issues and learn that in the real world, he's not likely to be friends with everyone anyway, so he has the right to choose. This is the time to experiment, make mistakes and undo those mistakes if need be. So what I plan to do is bring him for co-op classes that he likes. If the social situation doesn't work out, I'm not pulling him out. He either learns to work it out or to ignore the situation so he can continue with his classes, especially if he likes what he's learning. I'll definitely listen, be sympathetic, provide some suggestions etc, but the battles are his, not mine.
Sometimes, just writing about the issue, getting input from you guys and then stewing over it for a few days does wonders to clear the brain!