((((((David)))))),
I understand wanting to take care of people -- me too

But, why do it as a penance??
'Penance' implies 'punishment'. What or who (whom??) made you judge and jury AND criminal??
'Penance' is a religious term and is usually a priest/minister directing that you say a bunch of prayers and G-d will forgive you. It does not imply years-and-years of staying in a situation that seems to not "fit" you and that you seem to not really "enjoy".
Don't you think the penance or the punishment was paid for long ago??
As to your son. I know how you feel

My son got all caught up into 'stuff' that was not what I and his father taught him. There are a lot of other influences on children nowadays than ever in the history of the planet. My son's spent the last 9+ years in prison for road rage. A lot of teenage boys and young man are afflicted with horrendous bouts of rage -- not just here in the U.S., but everywhere.
Usually kids or young adults act 'inappropriately' because they're hurting in some way. If you act like you and your wife are a TEAM and your son is not part of that team, what kind of behaviour do you expect?? I understand that commitment to spouse -- my husband and I had that. A closeness that is so tight that it excludes everyone else. It's not really healthy.
Have you tried taking your son someplace quiet -- a park or a corner in a coffee house and just telling him how you feel. Scared. Worried. Lost. Without interjecting that he's coming between you and your wife. I know those aren't the words that you said, but, that's the FEELING that gets communicated. Voice-of-experience talking here.
You know, David, I'm a big believer in The Universe (or G-d or a Higher Power) guiding you to where you need to go next. Situations keep coming up again and again because you haven't mastered a skill that you absolutely MUST HAVE.
You've had a day where people disrespected you and and other people and the rules. You don't like confrontation. Fighting scares you. You feel like you're in hell (or jail) paying for some crime that you think you should be punished for.
You even apply more punishment -->> the drinking -- on top of everything else.
David, you sound exactly like me when I was younger. You know something, David

you don't have to pay anymore, the fine has been paid many times over.
Try spending some quiet time with your son without the emotional baseball bat. Just listen quietly. See if you can understand where he's coming from.
And try looking at the 'things' in your life -- work, training -- and see if they should still be part of your life. Do they make your life better?? Do they make life easier or better for other people?? Maybe it's time to think about a change in direction for you.
I wish you weren't hurting. I understand it and remember it so well. I wish more than anything that no one ever had to feel like that again.
One thing I know with ABSOLUTE CERTAINTY -- you do not need to pay anymore. The fine has been
Stay strong. BIG HUGS.
Barb