Idea for fighters, limiting what ships can mount what fighters, and making significant differences between dedicated and combat carriers. Instead of doing something like "These are small fighters, they can be used in small hangars", limit the OP that each launch bay can use for fighters. Say you have a Shepherd(I know this ship isn't going to have an actual launch bay, but for the sake of this example I assume it does). It doesn't make sense for that ship to be able to use and maintain high end "big" fighters, like a Xyphos heavy fighter wing. But it does have the capacity to launch and maintain "small" fighters, like the Borer mining drones it comes equipped with. So lets have a limit on the OP in fighters that the Shepherd can equip, something like 2 or 3. So the Shepherd can equip any fighter in its launch bay, as long as that fighter costs 3 or less OP.
Lets look at the Condor. Its a relatively low tech ship, so it probably shouldn't be able to use something as advanced as Xyphos heavy fighters or Trident bombers. But it is a dedicated carrier, so it should be able to use a good number of fighters, even if it is the smallest carrier(2nd in this example to Shepherd). So it has 2-3 launch bays, but those bays can only equip fighters that cost less than 3-4 OP, things like Piranhas, Broadswords, Mining Pods, Talons, and maybe even Thunders, Daggers, Warthogs and Gladius, but definitely not Tridents. Maybe it even has one "bigger" launch bay and one "smaller" launch bay. So the "bigger" launch bay can use fighters that cost 5 or less OP, while the smaller one can only use fighters that cost 2 or less OP.