I am in the same boat. I have stopped with day 1 purchases unless I know it is absolutely 100% something I am going to play a lot as soon as I get it. StarCraft 2 will be a close-to-day-1 (I'll probably pick it up today) and I think Bioshock 2 was the last one. Other then that I usually wait until they start getting cheaper. It makes the hobby a little less crippling to my bank account, and makes me not feel as guilty if I don't finish (or in some cases even play!) the game.
As for those who always finish games before moving on.. HOW DO YOU DO IT?! what is your definition of finished? Complete the story once? Get 100%? What about games like Rockband, sports games, racing games.. they don't really have an end. And if you are forcing yourself to finish, isn't it a bit like overstuffing yourself at dessert? Sure a piece of pie tastes good, but if you force yourself to finish the whole pie, you would get sick, and would not think well of that pie. Sames goes for me and some games.. after a while, I just don't want any more of that game, so I move on. Sometimes I go back to it, usually I don't.