I feel that the notion of no overlap - ever, is somewhat a trap that beginners tend to fall into. It does kinda make sense not to overlap, and the player might feel some pride in having figured this out by himself/herself. Personally I gave this whole idea up some 15 years ago (playing Civ2), I believe.
It can help to have some kind of rule of thumb for placing cities though, even for a more seasoned player. How about we formulate such a rule for anyone who feels unsure about overlapping?
Like that every city should have one food resource of their own, or how to easily calculate how many production tiles can be supported by Farms (on average). I know from my own experience that it can be tricky to calculate these things in beforehand, and end up with a city with too little

to actually work those intended tiles.
Someone also suggested that every city should keep the adjacent tiles for itself. As a rule of thumb (and not anything carved in stone) I feel this can be reasonable advice; a general rule about not placing cities closer than three tiles apart. (This prevents overlapping the original 9 tiles effectively.)
Lastly, I find it useful to swap high end tiles between cities. The length of a game is enough for a city to pass several phases of specialization. As an example I've had a city with good food resources focus on Scientist specialists initially to get three Academies going in my future research cities. Once this is done, that food gets converted into buildings (Slavery). Once the buildings are in place and the city has regrown to its happy cap, other cities some 3 tiles away can use those same bonus tiles to go through the same motions. When they are done the original city might take the food back in order to produce Workers and Settlers, while the neighboring cities (with better

output) can focus on military units. In the later phases of the game these food resources can support specialist, allowing for heavy specialization of the city (for

or

).
As an example.