It sounds like he functions fine, does his schoolwork and have healthy interests.
So there is no problem with the boy. The problem is lack of communication and accept. That is where you should intervene with counselling.
May I suggest that you leave your environment and go on a trip where you can experience challenges together. Maybe a family summer camp or even a kind of terapeutic expedition.
I have seen that anasazi has developed a 21 day long program. Normal programs are longer but only because the participent can not leave. If the terapist were doing their jobs and not looking on the financial part, even normal program would be shorter. In such family programs they have to do their best because adults can leave any time. See
http://www.anasazi.org/press-12.htmlThe important issue are however, that you solve the problem and not a symptom of the problem. So if you choose to sent someone, it must be you all.