With just a little bit of creativity, you could easily match the mnemonic with the actual name of the radical. For example, what you call “flag” (尸) is actually called “corpse” (屍) by Japanese speakers and could be imagined as a really strong man holding up a coffin from one end. That might seem contrived to you (it’s certainly more contrived than “flag!”), but it is no less contrived than many of the others I have seen, and it only took me about 3 seconds to come up with it.
And it is pragmatic, non-meta knowledge that your students will appreciate having been taught as they become more advanced.
You call 土 “grave” instead of “earth,” but graves are dug with earth, so how hard would it have been to create a mnemonic using the actual name of the radical instead of reinventing the wheel? I’ll be doing this for myself moving forward (using the “Add Synonym” function); why not make it the default pedagogical method for all your students so they can benefit as well?