So I've had a look further into this, and have started digging through the sourcecode.
I've tried assigning a TeamType loop to gunboats, to get them to flick between Rampage and Attack Base, to hopefully clear their target fixation, but their behaviour is still the same. From looking in UNIT.CPP in the code, they get assigned MISSION_HUNT whenever they come back in off the map edge. I might play around with TeamTypes a bit more to see what orders Gunboats will accept from a TeamType.
On the Orca reinforcement location, I can see in REINF.CPP that aircraft use SOURCE_AIR, rather than pulling SOURCE_NORTH / S / W / E from that set for the House. I'll look into what this means, but I'm not actually familiar with c++. So it's a bit foreign.