I always disliked wired tether and USB cellular modems because Linux thinks it knows about the link state and will close all your sockets if you briefly lost the carrier, whereas with WiFi tethering Linux is never aware of whether the phone has a carrier or not. The ergonomics are much nicer, imho.
I admit I never tried the wired mode on iOS. Maybe it doesn't propagate the link state?
Unlike cellular modems, the iPhone acts as a router and the link state it propagates is the link state of a (virtual) interface connected to that router, independent of the state of the upstream cellular interface.
This is a silly solution, but can you solve this by creating a bridge device and putting the cellular modem (and nothing else) on the bridge? Then the link state of the bridge should remain up.
I wonder why my experience is so different. I primarily use it while taking the train to my parents and for the second part of the journey the signal is bouncing between 2g/3g/no signal but I've not encountered this.
I admit I never tried the wired mode on iOS. Maybe it doesn't propagate the link state?