Sheena, I empathesize with you. I, too, live with my MIL for close to 20 years now and we have issues too, but of a different kind.
From what you have described, your MIL is feeling very, very insecure over her perceived loss of her son to you and it doesn't help that your hubby is not doing anything about it. So, it looks you have two options: 1. Move out and move on with your life or 2. Change your perspective about your MIL.
By changing your perspective about your MIL, what I mean is that see all her actions as stemming out of her insecurities (which I think they are). Whenever she makes a personal attack on you, tell yourself, "OK, she is acting out of her insecurities. This is nothing personal." Walk away. Or if you can, add a dose of humour. Start laughing, then walk away. If she tries and makes it up to you by buying food for you the next day, just thank her politely and said you have eaten. Or said you'd eat later and then go and do something else. Minimize opportunities where she can attack you.
Would it help to go for marriage counselling with your husband? Your husband must see that his nonchalance is affecting his marriage. But, as you've said, if he's a mama's boy, then, well, there are only two options for you: move on with your life or accept the fact that you've married a mama's boy and you would have to handle your PIL issues alone.
Does it help to try and win your MIL over? Say, buy her gifts on her birthdays and special occasions to show her you are not a threat to her son? If she makes sarcastic remarks, just tell yourself she is doing it because of her insecurities. Pity her that she has to do this all the time to cover up all her insecurities. It must be pretty tiring to live a life like that.
To digress, my good friend's MIL is like yours. Her MIL would call her in the office (when she was heavily pregnant) and accused her of taking away her son. But then, her MIL is mentally ill. She has been diagnosed with schizophrenia. Would it help to send your MIL for a medical assessment (of course, must do it tactfully; most schizophrenics deny they are mentally sick).
As for your SIL's problem, she should blame her husband for not helping out with the chores and childcare, rather than her MIL! If I were her, I would not even listen to what my MIL had promised me (that she would take care of my child). Our parents have done their job in raising us up and so likewise, it is our duty to raise our own children. If they offer to help, fine and well but it should not be the basis in which to decide whether the couple should have another child or not. If your SIL and her hubby so decide that one child is enough for them because they can't trust maids, then they should exercise precaution in their family planning. Why blame the in-laws?
Anyway, I wish you well, whatever decisions you choose to make. I understand your predicament because as I've said, I, too live with my MIL and it has not been easy all these years.