I'll share what I do since it's probably the easiest/straight-forward one.
1.) Get the villager you want to move in, obviously.
2.) Load up with your mayor and change the date to the next day, but at 5:58am. It'll still be technically the same day that you talked to the villager, which means that the villager will most likely move in the next day. You can also set it to 5:59am, but I'm always worried that the clock will change to 6am and I'm somehow not quick enough

3.) Save and quit.
4.) Wait for 2 or 3 minutes at least, to make sure that 6am occurred in your town and you don't waste 3 minutes for the next steps. I usually just close the 3DS as soon as it says "Save complete" when I exit out of the mayor, so then when I open it back up, you'll most likely see 'normal' villagers out of their houses which means it's 6am.
5.) Choose to make a new character. I don't answer the questions on the train, I usually just hold the R button and click A rapidly to make the process go quicker. I then also just type in a random letter as the character's name.
6.) Once you arrive at your town, search for the house plot. If you like it, go to the town hall like you usually would and do all the normal steps up until you're able to save and quit. Then load back up with your mayor. I'd load up on that day just in case, since the town technically didn't load up with the mayor. You can then delete the extra character you made.
If you don't like the plot, make sure you go to the home menu and quit the application, and just repeat steps 5 and 6 until you find a plot you like. The space should be different almost every time, though sometimes the plot is the same. I've heard restarting your 3DS helps if the plot is the same for multiple times in a row, but I haven't tried it.
If you're 100% sure that you haven't seen a plot (checking every acre of the town pretty much lol), then just repeat the steps for the next day and the villager should be moving in then.
Sorry if you already knew this stuff, I just decided to give thorough instructions I use to void any confusion
