EDIT: I misunderstood how Puppets are factored into the Gold yield. Disregard this post. I think that you are currently not getting enough Gold late game if you have a large number of Cities (~15 or more). The problem as I see it is that a large amount of your income comes from Trade Routes. And because the number of Trade Routes you get does not scale with the size of your empire it becomes increasingly difficult to get enough Gold for covering maintenance costs the more Cities you have. I suggest changing Stock Exchanges in a way where each Stock Exchange built increases the Gold yield of all owned Stock Exchanges by 1. I just played a game with this change where I went Authority -> Fealty -> Imperialism with ~20 Cities and the amount of Gold I got per turn seemed to me to be about right. An alternative approach would be to somehow scale the number of Trade routes you get based on the number of Cities you have but I think that this would have implications beyond just Gold (Science, Culture, Tourism).