OP,
Truthfully, I really don't mean to be nasty.
Harsh yes.
I think you need harsh, to have been accepting such appalling treatment from any man.
You have given multiple examples of utter meanness, disrespect and his snearing at you.
He's using you.
Why would you allow that?
Do you think allowing him to come to your home and eat you out of it, including food that you have asked him not to, indicates his respect and regard for you?????
Really?
You are working hard to provide a home for your child, and you are also clearly paying a cocklodger who lives free in his parents house, and lives off you, at your home.
Is that really what you waited for?
Is that really what you want in a man?
Someone who pays for NOTHING in his life?
I am harsh but not nasty.
You deserve better.
Your child deserves better.