I'm so sorry OP but he sounds like a classic abuser, as I'm sure you are coming to realise. There is no easy answer here, if you stay, you will become more and more unhappy, and at some point, could even be in danger. You're kids will learn that his behaviour is normal and may even resent you as they get older for staying with him. On the other hand, leaving is not a simple task, you will have a fight on your hands, but at least with this option there is light at the end of the tunnel.
What are you actually getting form this relationship? Are any of your needs being met? Do you feel safe, protected, loved, cared for? Do you feel like you have someone you can rely on, someone who will always have your back? Or are you staying because it seems easier than walking away? Than fighting him, than facing the financial issues? If so, you are doing yourself a disservice - you deserve better than this (and please don't take this as me judging you, it's something we can all be guilty of).
For a start, I would stop doing ANYTHING for him, cooking, washing etc. If he complains, tell him to stop nagging. You're exhausted and you need to put yourself first because you're going to need your strength for what's ahead. You also need to talk to your mum, and if possible, see a solicitor, and as Medical pointed out, be ready for the threats. Please don't sentence yourself to a life of abuse.
Good luck, stay strong and you CAN do this.