There are an awful lot of warning bells here and some of it sounds a lot like my relationship with my exH. For me now the treatment of the children and the selfishness would make me walk away without looking back. I was married for over twenty years so it took me a long time to see the light. I hope you don't take that long!
He was absolutely charming to everyone except us, so everyone thought he was lovely. He had no patience at home and occasionally used to scream at our oldest DS in very inappropriate terms. My DS was in trouble at school and at home for aggressive behaviour. The world had to revolve around exH and his moods and his constant need for adulation and entertainment. He was incredibly lazy and never did anything to help out (including never once getting up with the children when they were small). His right to sleep and his job (professional) were more important than mine despite the fact we did very similar jobs.
Like you I picked up all the slack and did everything. Then I found out that his selfishness meant that he had cheated throughout our relationship. He actually told me that he felt entitled to have me and the family at home and other women on the side so that he could have everything he wanted.
I divorced him for adultery but it is only now after some time has passed that I can see him clearly. Selfishness and entitlement are lifelong characteristics and they don't change. Life now is such a relief not having to work around him and his moods and demands all the time. I have so much more time! I parent the children in the way I want and I can't remember the last time DS was aggressive with his siblings or in trouble at school. In fact he is a lovely, calm, helpful boy. Interestingly I am much calmer too without exH to wind me up and stress me out.
I understand that it probably seems impossible at the moment to contemplate changing your family life, but perhaps you could at least start to think about the logistics, about what you want to change, about the positive and the negative things about your H and where your boundaries are.
I do think you need to put an immediate stop to the inappropriate behaviour at home and to the children though. That is an absolute fundamental and that is not about counselling or anything like that because you are just making excuses for a grown-up's bad behaviour. It is about calling him on his behaviour and saying "No more. That is final or you are out - non-negotiable" and mean it.