The real problem is that he is fucking lazy!
That he is not working is not a reason to:
Not getting up with his son, make him breakfast, get him ready, take him to school. Help you.
Not cleaning the house, laundry, washing up, shopping. Help you.
Not respecting that you are in pain, so do not feel like having a sexy time with him that often.
His refusal to help is the problem. He may be depressed or ill or whatever. But he needs to find out what his problem is and sort it! Or go out of the door.
Every bit of bread he is taking from your kitchen is something he is taking off your child's life. Most likely you could put your child in a new club, or take him swimming, for a weekend away... with the money it takes to feed your partner. And the mental load he is putting on you....
He needs to get up and do some chores and behave like a human.
Is he looking for work? Does he have any income?
He really needs to step up and get doing something. That will tire him, give him some self respect and sense of achievement and then all would be more manageable, for both of you. You cannot fix this from the bedroom. The issues are showing in the bedroom, but they are deep, really deep.