S.B.
You didn't mention your husband in any of this. Does he not spend time with the kids? Or is his mother seeing them when they're with him? I only bring this up because of the supervised, or no visits, others mentioned. If the kids are with their dad you'll have a hard time accomplishing that without getting the court involved, which could make this very messy. And even if you try that with your mother in law alone, nothing can prevent him from taking the kids to see her.
It's unfortunate that divorce causes people to talk like this. I'm divorced and have never given into bashing my ex to the kids - or anyone else - but he does it all the time. I know how hurtful it is to have your child come back from a visit with a piece of b.s. about you fed to them by someone else.
My advice would be counseling for you and the kids. You can't control what others will say, and you can't be there all the time to watch it, and cutting off relatives from your children doesn't make your kids see the others as bad guys, but you. You need to take care of all of your mental and emotional health and give the kids an outlet for talking with someone other than mom.
My thoughts when my ex trashes me has always been to let him go - not confront him because he only denies it, and not make a big deal with the kids. When they come back with something dad said I ask them if they think it's true. If they do, we talk from there but if not I tell them that sometimes people just talk and talk means nothing if it isn't true. This has been going on with my youngest since he was 6 and he doesn't think badly of me despite the jabs his dad has thrown out. But my oldest who's 22 got fed up and asked his dad to stop talking about me to him. The kids will see the truth eventually, and when you can't change how someone is, it's best to not try and fight on their level. Take the high road, you'll feel better for doing it.