Yes, I came to say what Category12 said. Sorry, because I know it's not what you want to hear. You're not protecting him from it, are you? It happened right in front of you and you couldn't do anything about it.
The problem is, abuse pervades every corner of a household. You're never truly free of it because you're always waiting for a trigger to set them off.
Leave first. Establish a home for DS which is completely safe and free of abuse. Never let your husband over the threshold. That will immediately be an improvement - 50% of his time spent in a non-abusive environment.
I wouldn't recommend going to court etc straight away. Men like this HAVE to feel they are in control. When you try to take control away from them it pushes every button that they have and they will dig their heels in. Instead I would be almost overly reasonable. Agree to 50/50, if he asks for that. Make reasonable arrangements (don't let him push you around for unreasonable ones, though). Wait and see what happens. Generally once they realise that you're not going to fight them, they get bored, they move on, the contact dwindles, eventually it is very little if anything at all.
And if it's not, at least your son has one home which is safe and free from abuse. And if it gets worse without you there, you report a concern to school safeguarding, who should help you, and if it comes to it, social services.