I think your best bet would be some kind of catfish like a big blue or a flathead. Because they are big enough to eat leeches and and large goldfish but unlikely to go into shallow water or surface area where frogs will be found. Also one large flathead could probably eat every goldfish in your pond no problem.