Does your MIL visit the kids at your house? Maybe if you can get ahead of her and do a major decluttering, you can show her your new "play room" or "toy area" or whatever. And explain that it's full, and each new thing that comes in means something will have to go out to make room for the new. Then stick to it. Would she notice that dozens of the toys she's bought over the past few weeks are already gone b/c there's no room for them, or does she not even know what she's giving the kids? (My sister will notice right away if a gift she's given DS is not among his mess of toys.)
Lots of people use bins to store their toys. Use one to fill up with donations. That'll keep everything neat, and when it's full you just drive it over to the Goodwill or whatever. If you need to be bolder, maybe label it DONATIONS and make a big show each time MIL comes with gifts that now DD has to put something in the DONATIONS bin to make room for her new stuff. I think if she sees you're serious about not keeping it, maybe she'll get the idea, especially if she's strapped for cash. I know I'd stop buying for kids who were just going to toss my gifts in a few weeks. I have better things to do with my money.
I have no idea if this will work, but I thought I'd try. Also, try suggesting things other than toys for your family to "do" for your kids -- zoo memberships, classes, clothes (unless that's a problem too), new "big girl" sheets or whatever else you might want/need that is not toys. Does your MIL bake? Maybe she could just bring cookies or a treat instead of a toy? Teach your kids a skill that will give them quality time with her instead of throwing a toy at them and calling it day?