Listen to me very carefully OP. You NEED to leave.
Imagine waking up in your own house, safe in the knowledge that nobody is doing to threaten you, call you names, shout at you, make you feel awful. You wake up, you get DS, and you spend the day doing something nice that you've told DS you would do. DS is happy and secure. He knows that mummy will give him the day she promised, that nobody will shout, he knows exactly what to expect. This could be - and should be - your reality. You only have to reach out and make it happen, for yourself and also for DS.
Here is the other reason you should leave. If you don't, those threats will become action. He'll start hurting you in deniable ways - bashing into you as he goes past you, snatching things off you aggressively, pushing you out of the way, grabbing you too hard. Then he'll start breaking things, and the breaking will get closer to you - a smashed table in front you of, a smashed door punched through next to your head. Then he will hit you. And not only will that ruin your life, it will ruin DS's life too. He only gets one childhood, don't give him one where he has to witness the person who he loves most in the world be attacked and beaten by the other person he loves. There is just no healing that trauma, it's there forever. If he's lucky he'll access therapy and manage it, but he could easily fall into the same patterns. You don't want this.
Save yourself. Save your child. No man is worth this, surely. You might not see this now, but you deserve a life of safety, love and respect. Your DS deserves that life, too. You are the only person in the world who can make this happen. Leave the fucking bastard.