I was halfway through your comment and getting ready to tell you about this great solution call PayByPhone that's used for parking all around my city. Thanks for that :)
However I would argue that charging sufficiently high prices for parking solves #1 too, the remaining difficulty would be finding cheap parking, not expensive parking.