When he has his own place, works for it and pay the rent then he can keep it as clean or messy as he wants. In the interim, he lives at your place, your space, your rules.
It would be really nice of him to contribute and clean while you are at work btw. that's the least he could do considering you are giving him board.
Calling his mom a pig under her own roof is beyond disrespectful. I'd tell him to get his own place (with a time frame like TX said).