Not a bug; this is working exactly as intended. It's realism is debatable, and it's definitely annoying, but it's critically important for gameplay.
Without the fleet upkeep system, your income would skyrocket after taking serious losses. For instance, if you had the full 2000 fleet command, losing a third of your forces would cause your income to temporarily double. With enough factories, this could cause the game to stalemate indefinitely because every time you damage your opponent's fleet, his income jumps up and he can easily recover from it. Especially with starbases in Entrenchment, this would be a serious problem.
Upkeep as it stands now plays an important role in ensuring that attrition strategies work and players can have their economic power eroded.
I've never seen a feature so universally despised in games as upkeep is, and yet time and time again I've found that it's one of the best features ever devised for improving gameplay. Remember, the difficult choices and consequences that make upkeep so annoying are also the very things that add to the depth of the game.