Make entire fleets move at their combined averaged speed.
Alternatively, have the entire fleet move at 0.6 of the difference between the fastest and slowest ship. If the slowest ship moves at 7 speed-units, and the fastest moves at 20 speed units, then the entire fleet together moves at (7 + ((20 - 7) * 0.6)) = 15 speed units.
While I do think it's an elegant way to prevent fleets from moving very slowly, I don't think this would be very realistic (as far as space travel of this sort is currently realistic). The slowest ship can't move faster than its maximum speed, can it? Unless it has an overdrive of some sort, but then I'd apply some damage while this is active to show extra wear and tear.
Realism is enjoyable and definitely worth pursuing, but when it conflicts with enjoyable gameplay, sometimes it has to take a backseat.
Weaker guns not doing much damage against a more powerful shield players can tolerate, but slow moving ships gets irritating really fast.
The game can either just be silent about why the slow ships are now moving faster than normal, hoping most players don't notice (or if they do notice, they'll just ignore it and continue playing), or the game can create an in-game explanation for it.
Possible explanation: To move quickly through space, the ships warp space around them. The better they can warp space, the faster they go. The warped space is enough to cover the entire fleet. Therefore, either the entire fleet uses the fastest ship's space-warping drive (i.e. use speed of fastest ship), or perhaps it takes more energy to make warped space cover more ships, so the ships have to combine their space-warping-engines and you use either the average speed or a formula similar to what I had above.
Here's an alternative method of making old ships move faster: Use the same thrusters in every ship, regardless of ship level. But make speed be based on the fuel you provide your ships. As the player researches better fuel, every ship gets that fuel and can move faster.
But how does ships way out in space change their fuel? Answer: Magic.
Or you can make 'fuel' part of the gameplay, so ships routinely have to return to your planets to refuel on a regular basis anyway, so they get the upgraded fuel the next time they return to port to gas up. (Note: Fuel doesn't have to be a liquid, it can be bronze, platinum, uranium, and so on, that you convert to pure energy to fly your Skylark spaceship using the 'X' substance you found while... </obscure sci-fi reference>).
[Edit:] Going off of Orymus3's post above mine, you can then have your spaceships have different storage capacities for fuel, to stay out in space longer. An entire fleet's storage gets averaged, because the ships can just transfer their fuel from one ship to another while in space (this should happen automatically without player micro-management).