hi A.,
When my children were little, my mother in law used to do the same thing, finally after months of pure he** at home after getting my kids from her house, i had, had enough. I went to her one day when it could be just the two of us. i asked her to lunch, (public places keep it from getting ugly) and over lunch simply explained to her that they were MY children and not hers, and she would abide by MY rules when it comes to raising them. She had her say for her children, now it was my turn. I also explained to her that if she couldn't abide by MY rules that she would not be able to see the grandkids at all unless I was there, and she would not over ride my decisions while i was there. shr really had no choice but to agree with me. I went home and told my husband what had took place over lunch and explained to him that he had to stand with me on this issue no matter what. he agreed. It didn't take to long before my mother in law had changed her tune, in dealing with my children.
I know that you can't afford to hire a service to watch your son, but maybe you can bluff your way threw it. I couldn't afford one either, but that's what i did, bluff. if worse comes to worse, check and see if your company provides some kind of daycare at your office. If you don't stop it now, you will end up with alot more problems later on. before you can teach your child respect for you - you have to start with the mother in law, if she doesn't respect you, then she will pass that to your child. So set the ground rules now, and no matter how harsh it seems, don't back down!
good luck - i hope that this helps you some!