He is indeed a piece of shit. And an illiterate one at that.
OP, please stick with this thread and continue to take people's comments on board. I've been where you are and it does seem like more of an effort to leave, but it's absolutely worth it. He has absolutely no respect for you and this won't ever improve. Even if you tell him you want him to leave and he promises to change after the initial rage and threats, he won't.
I'm outraged on your behalf. How fucking dare he speak to the mother of his children, the person he supposedly loves, like that? You are worth more than this.
You say he's a great father but I honestly can't see how he's even a good human being from those messages. My ex became a far better father once I left and he realised that his behaviour had actual consequences and he couldn't just go around treating the people he 'loved' like dogs and speaking to them like shit.
You can't stay in a relationship like this because it will disrupt your children's lives. It isn't worth you living with this colossal bastard and putting up with his crap. The kids will adjust, be fine and will ultimately end up with better, healthier views of relationships, as PP have said.
It won't be easy, but I promise you it will be 100% worth it.