I have a 180 litre/50 gallon tank containing a firemouth, salvini, blue acara, big convict, archer fish, 6 bristlenose, and lots and lots of plants including amazon swords, java moss, hygrophyla polysperma, valisneria, and watersprite.
Tank also contained a 3" Jack Dempsey, and 8 Buenos Aires tetras at one stage.
The only fish that bothers the plants in any serious way is the salvini, and that's mainly related to the pit she decided to excavate at one end of the tank, and the watersprite she likes to beat the crap out of next to her hollow bit of driftwood.
When the Buenos Aires tetras were in the tank, I saw them nibble on the tips of watersprite and polysperma a few times, inflicting no noticeable damage.
Also, there's a purple amazon sword the blue acara likes to wrestle with; he grabs a leaf and tugs on it. He hasn't managed to uproot or defoliate it yet.
When I plant polysperma cuttings, they often end up floating again in the next day or two, but I think this is by accident more than anything else. Once they develop a root system, they stay planted.
I'd say, try plants that grow a decent root system like amazon swords or cryptocorynes and plant them where you've noticed your Jack Dempsey dragging the fake ones to. Or try plants that will grow while floating, like watersprite.