To help with the uprooting you can barricade your plants by surrounding them with rocks large enough so your cichlid can't move them. Make sure the rocks are anchoring the plant's roots. As simple as it sounds, it works for my tanks. I don't have problems with them eating the actual plants, just rearranging the tank.

Here are a few plants that have done well in my cichlid tanks:
Anubias
Java Moss (It varies... some fish love shredding it)
Microsorium (Java Fern)
Echinodorus
Vallisneria
Cryptocoryne


I certainly don't guarantee that you can successfully keep live plants with yours, as some Jacks can be absolute pests when it comes to that....
If you have any more questions don't hesitate to ask.