You sound really sensible and considered.
With regard to teaching your child that his fathers behaviour Is unacceptable, remember you have a lifetime to teach your boy how to be a good person. His parents living apart will be enough to cope with for now. You can then let him take the lead, allow him to ask questions. If he knows you are there for him, he will feel comfortable enough to ask you what he needs to know. Baby steps. It's all baby steps and putting your child first.
This man will always be part of your life, for as long as your son wants him there.
This is just what I've done and I hope it might help you:
It's not in my nature to keep my gob shut, but I have and it's working. I defer to STBXH for his views on how the separation should proceed, and how much he thinks he should pay (I can do this because he hasn't got a clue so I'm kind of double-bluffing him). So far I have managed to show him how much our living expenses are and proved it with a budget so he hasn't argued. (Make sure you do not miss anything out). Always appear totally and utterly reasonable.
I haven't managed to keep my mouth shut in the same way when I've told his siblings the REAL reasons we are splitting.
I've been to see flats with him, and driven his move (because if I didn't it would take forever) I pack a box a day for him and hide them in the basement so the kids don't see. It all looks like business as usual from the outside. I don't discuss it with friends when the kids are around. It's all VERY considered. I hate it when he's around but I'm keeping busy and out of his way (means the ironing gets done and cupboards are getting sorted!)
Other things I've done is start exercising, stopped drinking (two glasses on a Friday when he isn't here and it's bliss), and begun to keep myself healthy. It's important to look after yourself.
It's taking a lot of inner strength to do this, but my point is, it doesn't have to be hideous. (Helps that he is a narcissistic, heartless fucker who doesn't give a shiney shite about me or know the meaning of remorse. )
Baby steps.