I've come to terms with the idea that energy to buy buildings is the way we are to jump start a new city rather than trade routes. You can often get good income from external routes from a new city, although not really enough to significantly speed up your buying, so it can help pay for it's own stuff a little.
The big gains to other cities from new cities still bothers me though, so here's my plan.
Cap the gain another city can get based on their population and what the other city's land can produce.
Add up the food and production yields for every tile a city can work. Divide that by the number of tiles it can work to get the average food and production per tile. Multiply those two numbers by the half the opposite city's population and that's the cap of what they can get from the city.
A city surrounded by plains would give a max of 1 food and production per 2 population of the other city. Having resources there or getting workers out to improve tiles would raise that cap.
It's basically simulating if some of the population from one city trucked out to another and worked their tiles. Instead of simulating nothing.
Half population might be too low though. In my last game I had population problems for a long time, 6 to 8, so that seems low at first but other colonies didn't and had 18 to 22 where it wouldn't be much at all.