i don't think there are set rules on how often you should talk to villagers- nobody reallly knows what makes certain villagers want to move- but if you do take a break longer than 5 days, you should always tt back to the last day you played and go day by day to make sure nobody wants to move. if someone pings you to move, then you're safe to tt back to your current day. if you're against tt-ing, i suggest making sure you talk to you villagers to avoid surprise movers at least a couple times every 5 days.
I stopped playing ACNL for a year due to school. Just make sure you record the date you last logged on and when you want to play again after a long break, change your DS's date before you login c:
It's actually simpler than all of that. If you get two villagers to give your their 'rumor' dialogue (Rumors are scary... Spill the beans, blablabla, you can google them) then you know nobody is moving and you can quit playing for no matter how long you need. You can also go on hiatus if you stop a villager from moving that day.
I take four month hiatuses, never lose a villager.
I just stop playing on a day that a villager tells me they are moving. I tell them to stay, and when I return, no one has moved. I do this all the time.
When I need to take a break I play until I get a moving ping. Stop the mover and than quit/save. Write the date in the gaming notes on the 3DS because I have more than one copy of ACNL. When I'm ready to play I can go back to that date or play on the date Isabelle says it is. If I go with the date Isabelle says it is I make sure to talk to all 10 villagers to get where have you been. Also to get rumor/ping movers.
I've been playing since release and haven't lost a villager.