Russ,
I have seen the grubs in both species. But from my experience the perch seems to eat more of the snails than the bluegills, which would reduce their numbers (they don't get the grubs from eating the snails).
If you can't eliminate the herons or kingfishers your only other choice is to eliminate or reduce the snails (break the cycle). Do you have access to any redears (shellcrackers)?
Only other possiblity is to set up some heavy braided line on stakes around the pond to keep the herons from wading in. Not as difficult as it sounds. Or an electric fence.