Woohoo. After all this lurking I finally have something to contribute...
TLDR - the check valve is key.
I just installed a hot water recirc system in my house (not for fish, but because the wife was complaining about having to run the water for two minutes in the morning before she could take a shower). When I initially installed it, I didn't put a check valve in on the "reverse" side of the pump (between the pump and where it T's into the hot water supply). Because of this, when the pump was running , everything was fine - the model I have has both a thermostat and timer.
However, if you turned the shower on when the pump wasn't running, you would pull hot water from the tank, along with lukewarm water from the HW return line (i.e. from the cold supply), resulting in a chilly shower. In your case, it would pull the tank temperature water out of your heating loop.
I installed a swing check valve rather than a spring one, figuring that the only time it needed to be closed was when I turned on a shower, etc. You'll get a little 'backwash' when the system is static, but since it's all potable water I think that should be fine. I figured that it would put less restriction on the pump when it's running, and be more reliable in the long run, since I don't have to worry about a spring in the check valve.
I also installed manual ball valves on both sides of the pump, so I can take it out for maintenance or to modify the system without having to drain the entire recirc system.
Awesome build. It makes my 125+75g sump seem pitiful by comparison.