Ok, here are some ways to limit Starbase spamming abuse while still allowing multiple starbases:
1. make x amount of planetary population within the operating radius of a starbase a prerequisite for the construction of a module. For instance, only a single economic module can be constructed for every 15 planetary population units. For example if there is a single planet with 10 population than you can build only a single economic around it. Alternatively, it can receive the benefit of only a single economic module, which ever is easier to program. It is also possible to tie this to the overall population within the area of effect of a starbase. Thus a starbase with 3 planets in its zone of influence that have a total of 23 population combined can contain two economic modules. This system can be used to effectively limit the amound of bonuses without limiting the amount of starbases. It could also be use
2. Limit the amount of modules that can be built in a given radius without relating it to planetary population. This is the simplest solution, but also the crudest.
3. Create dedicated kinds of starbases, Mining , Research, Production, Trade, Listening post and limit these to a given radius. This can be elaborated in a way that some starbases give bonuses to each other - for instance a trade station might buff all other bases and so forth. I personally prefer simply very large starbases with multiple modules.