Most people would cite danger to populations and property as the foremost reason to stay away from land. You're setting down a rocket on a tail of flame like a 50s sci-fi film, after all. But the economics of the launch physics is the overwhelming factor.
The "flying over populated areas" question is pretty much solved by their options to launch, currently coastal areas. By the time of the first stage MECO (Main Engine Cut Off)MECO (Main Engine Cut Off) and separation, the Falcon 1st stage is significantly northeast of Canaveral, with nothing but water underneath.
Elon Musk did pitch trying to fly back to the launch pad, but the tyranny of the rocket equation makes the price exacted on payload unacceptable. Even if some of the booster cores from the Falcon Heavy make it back to shore (and this remains to be seen), they still plan to land the center core on a barge.