Hmm... a somewhat weird idea, but what if we combined Engies and Gunners into a single "crew" class? So basically there'd only be two classes: Pilot and Crew. The Crew would have four equipment slots that they can fill with either ammo or engineering tools, would have all the stamina abilities of both engies and gunners (so they can sprint, force angles, and accelerate reloads), and would have access to all the non-Pilot cooldown abilities.
An individual crewmember would be able to specialize to their role using their loadout. A gunner-style loadout would go heavy on ammo and bring an offensive cooldown like Cataclysm, an engie-style loadout would go heavy on tools and bring a defensive cooldown like Mechanized Reload. Or someone could fit as a jack-of-all-trades, bringing two ammos and two tools.
Of course this would mean that with the exception of the Pilot being special, we effectively wouldn't have classes at all. But it would address issues with getting people to switch classes, as well as situations like "I know you're a gunner, but you have a wrench and I need you to use it", or "I know you're an engineer, but you can still man guns so get on there".
Of course, maybe this is just crazy talk. I can already see at least one issue would be a "gunner" bringing a buff hammer as his third ammo type, for example. And it'd be hard to balance against other ammos because it stacks with them.
It would handily do away with the whole "everyone wants to be gunners, but everyone needs to be engies" thing though.