I had an idea while playing the other day which might help with fleet management. The idea is to have explicit representation of fleets. You create a fleet and set the number of each ship type that you want the fleet to contain. As ships in that fleet are destroyed, they are resupplied by the nearest docks. For each planet, you would also have a garrison fleet, which would default to free roaming defender mode, and would be resupplied in the same way.
If you went this route, you could essentially eliminate manual building of ships entirely. There would have to be some intelligence to the system, as well as some configuration. Do you want to be resupplied while in battle, or have the ships warp into the closest planet so that you must retreat to be resupplied?
I feel like this system would eliminate even more of the micro, and allow/force the player to worry about more strategic issues. It solves the original poster's problem with maintaining garrisons. It makes the placement of docks more important (or at least highlights the importance). It makes the player supply lines more explicit. From the map view you could view supply lines. If you have multiple fleets being supplied from the same docks that would cause delays in reinforcements. You could have a fleet screen to look at how your ships are provisioned amongst garrisons and fleets, and adjust those provisions.
I'm sure there are lots of implications I'm not thinking of, and I'm not sure what the ui would look like exactly, but those were my thoughts on fleet management.