This is actually possible and luckily is somewhat easier than editing other stuff? Because the cave is triggered by an event which can be directly modified to not have been seen yet. I'll give you the steps but I'm going to assume you have some knowledge in editing files and know basics like backing up your save, otherwise I'd just refrain from doing so as the risk is fair if you mess up a line you can't find again.
1. Do all your save backup stuff, open file in something able to edit it, notepad is what I use on windows
2. Control F to open search function and search "<eventsSeen>" which will have a whole list following it
3. Find event 65 and delete (fully, no spaces between other entries) "<int>65</int>"
Okay now here's the fun part, if you want it's possible to get both at the same time, but I'll assume you probably want to decorate the cave and that's why you don't want mushroom boxes so we're gonna have to delete the boxes themselves too
4. now we're gonna get rid of the boxes, control f again to find "<GameLocation xsi:type="FarmCave">", the spot we want is right after this
5. This part is probably the only part you can mess up, but you need to delete a whole chunk of data, starting from "Box</name>...." and ending at "...</items></objects>" that's right before "<resourceClumps /><largeTerrainFeatures />".
6. You then have to replace all of this text with "</objects>" (make sure there are no extra spaces between surrounding entries)
And once you save and reload the file it should work, good luck