The problem I have with free-to-play titles is that the quest of the developer to take the player's money extends into the game itself. This creates a below-optimal experience where the game itself is an advertisement.
What I mean is this. If I pay up-front for a game, then as soon as I start the game, the developers already have my money, so the game can use all its resources to entertain me, without being abused to try to get money from me. This means that the advertisement and the game are separated - the advertisement is in the store, on the websites, on review sites, on youtube videos, between friends, on billboards (digital or not), wherever, but not in the game. So when I start the game, I'm away from the advertisements, and can enjoy the experience as they designers meant it to be (i.e. the experience as advertised outside of it).
If there is a free app with in-app purchases, the game will inevitably try to convince me to buy things. So, the game becomes an advertisement. This impedes the experience. I don't want to be nagged to buy stuff when I'm playing a game, I want to play the game. Of course, much of this has to do with how the IAP is advertised, and how much it's in the way of the experience (because it's always in the way, because every advertisement that's noticed is in the way by default). So here the message is: keep it decent. Players need to be able to find the buy button and know what it gets them, but they don't need to be reminded after every level.
That said, I have never bought any mobile apps simply because I don't have my device connected the things I would need for that.