Yah, I agree with you. Especially in the situation provided where there was literally 0% chance of success. The sub attack was simply an “Offensive fodder” attack done to make the fighter move “quasi-legitimate”.
To me (on a personal level) the rules should stipulate that Carriers be required to move during the combat phase into the only potential landing zone and thus force the attacking player to win the secondary battle in order to ensure the fighter can land. Otherwise this just enables people to do this kind of weak ass fodder tactic in order to get to the transports that would otherwise be out of range. This would then also mean that an attacker has to potentially sacrifice very valuable units (carriers) to accomplish these kind of delaying actions.
Just my opinion though.
From an emotional point of view I am with you here and as a fun fact in a current game I face exactly the ugly site of that move as he has Carrier plus sub in place which creates theoretical threats for all my transports. He can sac just a sub and then theoretically kill TTs in many seazones (for the price of saccing the Air of course).
However I like this rule because it gives the game some more dynamics and makes blocking a bit less powerful which I think is good for the game and does make you a bit less dependent on can openers and gives a power to overcome blocking at least a bit better without an allied power.