Only one sub was ever sunk by a BB:
http://en.wikipedia.org/wiki/SM_U-29_(Germany)
In 1914 terms, this would give cruisers a definitive role in screening BBs from subs.
Yes, it would mean a lot more subs in the game but that is historical - naval commanders were in a state of panic of what to do about submarine; they seemed to make BBs obsolete.
One suggestion I’ve made is that you simply cannot have Battleships in a fleet without escorts (i.e. cruisers or destroyers if they’re available), much like you cannot have tanks without infantry.
So BBs can take a hit for the team, but they cannot be left as the last unit. Hence, you always have a chance against subs.
One question raised by the idea is:
If BBs cannot hit subs, then can they hit transports even if there are still enemy subs around? I say - yes!
BBs can’t hit subs certainly seems to create a more natural balance between the naval units in 1914; cruisers have a proper role, subs are now the deadly weapon they were instead of cheap cannon fodder, and BBs are not the overpowered monsters they so far seem to be.
I can’t speak for WWII versions; air power is the decisive element here that makes it a different ball game.