I think your biggest problem is your husband. He is disengaged. He is not around on the weekends very much, but he thinks YOU'RE selfish? What is he doing that is so much more important than his children and his wife? If he has a second job that is essential to the family income, that's one thing. If he is working hard so they can have soccer and braces and college tuition, that's admirable. But he's not standing up for you when his mother criticizes you, no matter how incredibly included and involved she is? So how is it that he's "a good dad"???
So either he takes over all the scheduling of their parties and soccer games and activities, and he works out the schedule with his mother, or he backs you up starting today. If he cannot schedule their activities, he will have 2 crying children who are missing their growing up years, and he can sit home on weekends and console them, explaining why they cannot play soccer or go to a birthday party. All phone messages and emails and party invitations can be piled up on his side of the bed. He can also cook the family dinners o the nights his mother wants to come over.
Okay, so that's not going to happen, right?
But perhaps a good sit-down, explaining that he's abdicating his role as a father and everything that means, would be a good idea. You are the one doing the parenting, giving your kids the snuggles and the down time as well as the social life and athletic activities. He apparently is content to have them grow up to choose men who hand over the childrearing to their own mothers and then aren't around to be a role model - is that the plan?
You are also giving his mother a social life. If she had weekends to help out, it would be nice if she did it magnanimously instead of to put herself in the role of primary caregiver and moral compass. If she is so attached to her role as sole provider, it was more than "helping out" to her - she wants the kids alone and not as part of a family. Maybe she doesn't feel sufficiently thanked even though you have gone out of your way to do so? Maybe something more formalized to thank her would help? A gift certificate, a framed poem to display in her home, even one of those awards trophies or plaques you can make up at any trophy store? But maybe that's not enough for her? Has she given up all activities in favor of her grandchildren and now she has no life?
So there's some major dysfunction here, and if you can't work it out through a conversation, then I think family and marriage counseling are the next step. But no, this cannot continue. As the kids get older and have activities with friends that even the parents are not invited to (movie dates and afternoons at the mall and high school football games), and as their homework increases to (sadly) impact the duration of family dinners, Grandma is going to have much less time with them. And she and your husband will make that YOUR fault. I think you need to get on top of this sooner rather than later.