I agree. (Soft) limiting districts in combination with the (soft) settlement cap that we already have could be an option. I'd actually take Humankind for a comparison here. Both that and civ 7 have unlimited districts, while their predecessors Endless Legend and civ VI had limited districts. Opening that limitation didn't fare too well in neither game.
One potential way to limit districts could be by making population a more contested resource: make units take up a population, and make urban districts also cost population instead of providing population. But this might just slow down the game too much.
In addition to districts, I think the snowball per tile is also a bit too strong in 7. In previous games, tiles with 5 resources were great in the beginning and still worth it in the mid game. In civ 7, you find tiles with 7 or 8 resources regularly, and many buildings provide 10+ resources as well. In the late game, a tile with less than 20 resources is actually bad. They tried to limit that with the age reset (building yields drop down, adjacencies lost, rural tiles reset), which seems a good way to me. But then they decided to just ramp it up in the next age for some reason. Yet, if yields reset, it would have been fine to make age 2 buildings just a bit stronger than age 1 buildings, and not twice as strong... so, I don't really follow the philosophy here.