Yes. Some mod could be made. Here's a trace dump if anyone wants to try it.
Entering Jet(1)
Leaving Jet() - return 1
Entering [sportBallsPackage]armor::onTrigger(38, 13705, 4, 1)
Entering [PirateCannonPackage]armor::onTrigger(38, 13705, 4, 1)
Entering [TankPackage]armor::onTrigger(38, 13705, 4, 1)
Entering armor::onTrigger(38, 13705, 4, 1)
Leaving armor::onTrigger() - return 14005
Leaving [TankPackage]armor::onTrigger() - return 14005
Leaving [PirateCannonPackage]armor::onTrigger() - return 14005
Leaving [sportBallsPackage]armor::onTrigger() - return 14005
Entering armor::doDismount(38, 13705)
Entering [BotHolePackage]armor::onUnMount(38, 13705, 14005, 0)
Entering armor::onUnMount(38, 13705, 14005, 0)
Entering Vehicle::onDriverLeave(14005, 13705)
Leaving Vehicle::onDriverLeave() - return
Leaving armor::onUnMount() - return
Leaving [BotHolePackage]armor::onUnMount() - return 13705
Entering [BotHolePackage]armor::onUnMount(38, 13705)
Entering armor::onUnMount(38, 13705, , )
Leaving armor::onUnMount() - return
Leaving [BotHolePackage]armor::onUnMount() - return 13705
Leaving armor::doDismount() - return
Entering Jet(0)
Leaving Jet() - return 0
Entering [sportBallsPackage]armor::onTrigger(38, 13705, 4, 0)
Entering [PirateCannonPackage]armor::onTrigger(38, 13705, 4, 0)
Entering [TankPackage]armor::onTrigger(38, 13705, 4, 0)
Entering armor::onTrigger(38, 13705, 4, 0)
Leaving armor::onTrigger() - return 0
Leaving [TankPackage]armor::onTrigger() - return 0
Leaving [PirateCannonPackage]armor::onTrigger() - return 0
Leaving [sportBallsPackage]armor::onTrigger() - return 13705
13705 is my player object. 38 is the standard jet player datablock. 4 is the slot for the right click. 14005 is the vehicle.
This code would just stop you from dismounting anything at all:
function armor::doDismount(%this,%player){}