Well, they did avoid big naval battles in WWI (well, for 2 years until Jutland and then after that) simply because it was risky. Having a “Fleet in Being” was far too valuable.
True, but Germany did risk the High Seas Fleet at Jutland. And the only reason they did so was because they knew that if it got too hot they could scuttle back into home port and make repairs.
If the game makes a badly mauled attacking fleet stay in hostile waters then we’re back to the “sitting duck” status of fleets in WWII versions - it’s an even bigger risk than it was historically. We’ve gone from one extreme to the other.
My solution would be:
Allow the attacking fleet to retreat back where it came from, but allow the enemy fleet to pursue. Then that side has to consider risking the mines to finish off the wounded foe. A pursuing fleet cannot retreat, but of course it gets it’s next turn before the rival navy plays again.
Perhaps a fleet in a contested SZ which contains its own home NB can be considered blockaded; it cannot sail out of the SZ until it has destroyed or driven off the contesting ships.
I’m assuming here that, under normal circumstances, a fleet in an already contested SZ can sail away without engaging the enemy.