So what does he do with his time at home? I can't stand grown adults who can't look after themselves. DH is absolutely hopeless with things like washing, so I have always refused to do it for him. He has to figure it out or go without clean clothes. If he runs out of work shirts, he's the one up early to sort it out, not me. Not my problem.
It's a bit of a cliche, but can you just stop doing stuff for him so he starts to feel the consequences a bit? Not in a passive aggressive way, tell him upfront that he needs to start pulling his weight, then actually expect it of him.