Hello Sycamore
I read your post and thought it sounded similar to several little boys I know, including my own of about the same age. I wondered about a couple of things:
-are play dates that 'fail' at your house or elsewhere? My DS can be very possessive at home when he's charming and delightful elsewhere. Friends with similar little boys all agree that when they're on home turf they're worse.... Could play dates be held on more neutral territory where all concerned are feeling less tense?
-have you asked preschool about friendships and people he regularly interacts with? I find it quite difficult to talk to the ladies at my son's preschool because its always so busy and I often come away feeling a bit brushed off and as though I haven't really got the answers I want... maybe arrange a meeting with the key person and have some pre-considered questions to help you explore what really happens in his day when you're not around....
-maybe talk to your health visitor. You say you have a six month old too, so I imagine you have access to a health visitor/team. They can often also be found lurking at local authority children's centres. They should be able to give you some good guidance on what is normal for the age - and I must say it sounds to me like your DS is not outside the bounds of normal. That said I'm not an early years professional so I agree with those that have said you should seek further advice.
-have you tried 'positive behaviour management' techniques? This includes strategies such as 'tactical ignoring' of poor behaviour and trying where at all possible to notice and praise the positive. We've found that a star chart works well, but to get going we had to be prepared to reward the smallest of things and really try to ignore or downplay some really silly/poor behaviour. Rewards need to initially be easily achievable but you can gradually raise your expectations. Make sure you notice and praise even the smallest positive choices.
All that said, I know it can be depressing and embarrassing when play dates don't work and other children seem so much more sociable. Its really important to try to relax and your son will pick up on your tension and you should remember that the other parent is probably just relieved its not their child this time!