Habitatpro - I put waterlillies (not the wild ones) in my pond and they not only provide cover but also look nice. We have cultivated whites, pinks and yellows and they do not spread to new locations in my pond unless I move pieces of them around. However, if your grass carp have nothing else to eat, they'll pick on the waterlillies. I have no grass carp in my pond because my weed cover has always been right where I want it for providing cover for the small fish. However, a friend with a few large grass carp in his pond says they will eat waterlillies if no other food is available. Pickeral weed and lizards tail might be another couple choices for cover and good looks, but I don't know how they hold up to grass carp. Burreed is another possibility if you do not mind tall reeds near the edge of your pond and you want to encourage migrating waterfowl.