dd1 is just like this - the difference is, she is not unhappy though. She is very quiet, often keeps to herself during breaktimes, barely speaks above a whisper. She is also a high achiever at school. She is now 8, and in the last year has started to make some friends with whom she will now relax enough to talk to them (before she would not speak at all, she was virtually mute in school). She does gymnastics and goes to youth club outside of school, and young naturalists club once a month. She finds youth club a challenge because it is not structured enough for her and she feels exposed.
At the age of 6 dd1 was much less sure of herself, felt like she did not fit in, and found it incredibly difficult to make eye contact (she still struggles a little with this). We constantly reassured her that being shy was ok, that she should be proud of being who she is, and she is finally beginning to take this on board.
Groat, why not invite over a friend of ds's for tea, and give them an activity to do side by side. That way your ds doesn't have to make conversation/play, or look him in the eye (which he may find intimidating), but can be in the company of another child in a relaxed environment. This is a technique we used with dd1 which really worked at this age. A big box of lego in the middle of the living room floor whilst you are within sight in the kitchen/next room should work. And palm off ds2 for the afternoon so he doesn't take over! (I have a loud dd2 so I know about that too!!!)
I've rabbited on a lot but hopefully some of this might be useful to you as we are two years further down the line. Feel free to ask me more about this if you want.