Do not worry about villager never returning if they move away unhappy. They will return with amnesia when you invite them back in your town either via trades or Amiibo card
Adding on to
@LadyDestani excellent guidance. I developed a good way to place villagers where I want them to place their houses.
It requires you to initially have one character spot vacant. The Welcome Amiibo update allows you to somewhat control the spot where your potential villagers can move into using patterns (villagers will not place plots on patterns).
First, I placed patterns around town and have 3x3 empty plots of land available around the town where I wouldn't mind a villager placing his/her plot on.
Second, I create a new save file during the new day (town day resets at 6AM) that a villager was going to place his/her plot and check out the feasibility of the 3x3 plots of land that I left available. After checking one plot, I quit and begin the process again until I checked the feasibility of all the available 3x3 plots of land.
If a villager place his/her plot on the available plots of land then you know it is a potential spot for future move-ins. Record all the potential spots somewhere for future references.
Some additional should know is that villager plot placement require 3 extra spaces horizontally from another villager house or PWP, 3 extra spaces horizontally from cliffs (by the sea) or river, 2 extra spaces vertically from another villager house or PWP, 2 extra space vertically from cliff face (on the side of the town), 1 extra space vertically from the riverside, and 3 extra spaces vertically from the town square.
Until today, I'm not sure how many empty spaces horizontally are needed from the town square and I have experiment with many failures so it's best to not plan for any placements above and below the town square!