First let me tell you that I admire your ability to so clearly write about your son and about your feelings. He is lucky to have a mother so willing to find answers.
I, of course, don't know your son but it sounds like he might get overstimulated at school and that he does not know how to deal with it. How is he in groups at home? Does he play well with kids in smaller setting with less people around? Do social situations make him feel uncomfortable in general?
I would recommend seeing a child therapist specializing in play therapy and role playing. He might need practice in how to calm himself down and how to interact with others. A good therapist will also help diagnose your son.
Your son is still very young so there is still time to get help before his behavior becomes engrained to the point that the behavioral patterns become automatic and his self esteem suffers further.
I urge you to seek outside help for yourself as well. Family and friends are great support but nothing beats listening to those who have similar experiences to yours.