Hi, I'd like to help you with your question.
It sounds like your son is feeling insecure. He is a good father, husband and son. But he may not feel he is able to handle all the responsibility.
Men function very much on performance and power. Sports, work and at home, they all compete and feel the pressure to perform well. They need to be in charge. When they feel that their competency threatened, they act out by becoming upset. Some men are more in tune with this feeling than others. When you do something he feels doesn't support him or his opinion, he sees it as you betraying him. And since you are his mother, he looks to you, even as an adult, as the ultimate sense of comfort in his life. Mom is supposed to love me above all others. When he is stressed and feels insecure, he wants to see you as the one person who will make it better. By making personal choices he finds threatening though, you "betray" him.
This is not about anything you are doing. This is about him and what he is feeling. Suggesting he come with you to counseling is an excellent way to resolve his conflict. If he is willing to go, it will help a lot. He may also want to continue on his own until he feels he understands his triggers and why he gets so upset. Once he can get a grasp on that, he will be fine.
Let him know that you love him and are there for him. But do not accept the responsibility for his behavior. By trying to work around him or giving in all together, it will encourage him to continue the behavior. He needs to see it is about him and not those around him.
I hope this has helped you,