While I'm glad villagers just don't up and leave your town, as in the first game, aren't constantly on the verge of moving in as they were in Wild World and aren't vague when they ping you that they're moving, similar to City Folk, I feel New Horizons' method gives the player way too much control over the lives of these individual animals and misunderstands why this mechanic was implemented the way it was for as long as it was. It sucked having your favorite villager moved, but that's supposed to be a lesson — that things change, and people find other places to live. This is a life simulator, right? Why shouldn't this apply here, as well?
I think New Leaf handled this best. You don't have to start the game everyday just to make sure your villages stay in your town. Villagers would announce their departure five (ten if the Welcome amiibo update is downloaded) days in advance. That was plenty of time, and New Leaf is an handheld, so it's easily to pick up where you left off. The Nintendo Switch might not be a true handheld system, but you can still take it just about everywhere you go. It's only a "punishment" if you interpret it as such.