The way I got villagers to change shirts is I carried ONLY that shirt in my pockets and emptied my bells and then saved and continued, and I just talked to them either until they didn't want to talk anymore, or until they offered to buy/trade for the shirt and then if they changed into it, I was happy. If they didn't change into the shirt, I closed the software and did it all over again. Now, if they didn't trade/buy it, just wait a few minutes and you can talk to them some more. c: That's worked for like 6 villagers for me.