Just because you’re a counsellor doesn’t mean that you don’t have your own issues to deal with. I’m basically in the same boat as your wife and I see a lot of parallels here.
For one thing, your post is a lot more focused on YOUR feelings about your behaviour than on how your wife and kids must feel. You even say that you’re resistant to hearing from your wife that you’re being “that guy”. But how can your behaviour ever change if you’re still somehow justifying it to yourself, or you’re not willing to hear some hard truths about how you’re making other people feel? Who is the victim here? I guarantee that your wife and kids are feeling just as terrible as you are, with the added stress of being helpless to change anything.
So the first step I would take is to sit down with your whole family and acknowledge the things that you’ve done and said that are cruel and inappropriate. Ask your kids how your behaviour has made them feel, listen and apologize. Let them know that how you’re behaving is wrong and give them permission to tell you when you’ve hurt their feelings. Make a commitment to all of them to change and give them permission to hold you accountable. Don’t use your shame as a weapon – your kids and wife aren’t responsible for your shame, and shouldn’t feel like somehow you’re the victim because you’re beating yourself up.
I think a lot of people use shame as a defence mechanism. Whenever my husband uses shame, it makes me feel like I have to back down, or that somehow his behaviour makes HIM feel worse than it makes ME feel. That’s just not true, and it’s a clever way for an aggressor to turn themselves into the victim.
So as hard as it may be, accept that you are the aggressor in this situation and you are doing damage. Punishing yourself with shame doesn’t help anything, and may actually contribute to you feeling like you’ve already paid the price for your behaviour and don’t have to make any amends to others.