Unfortunately that behavior is somewhat typical. There are a couple of things you can do to help prevent that from happening:
1- Make sure the fish are well fed. They typically don't feed while having eggs/fry in their mouth. If they cannot survive the hatch and release period food-wise they will eat the eggs.
2- Make sure the tankmates are docile. If the environment is too "stressful" they will be more likely to eat the eggs.
Sometimes the fish just needs to mature a bit more as well.