yeah, it's a minimum distance thing. Any tile that's within a certain distance of another city is barred from construction, even if it's fertile.
I really find the current system strange though. It seems fairly arbitrary which sites are considered fertile enough. There's plenty of grassland tiles which aren't, and plenty of desert tiles which are.
I don't really understand the design decisions at work here. I guess maybe it suits the game design to have vast uninhabitable areas, so that the entire world isn't covered in cities. But i really wish it were possible to choose which city harvested resources go to.