I had the same problem with my son, and my solution was similar to @Willow Rex's amendment, a token system. I spray painted a bunch of pennies with gold paint, and got them each a "treasure bag" (with a pirate skull on it) to keep their pennies in. They got pennies for getting up in the morning, brushing, eating breakfast, all without being nagged. They got pennies for good grades in school, for going to bed without fussing, for good dental checkups, for doing chores, for birthday gifts.
The advantage of a token system over money is that you can adjust the "price" of an item according to how much you want to encourage or discourage the purchase. For example, my son loves fruit. He also loves candy. He quickly figured out that he could get a whole bag of apricots and peaches for the same price as a single candy bar. Usually he'll take the apricots. Sometimes he wants the candy badly enough to spend the rather exorbitant price I put on it, and when he does, I let him buy it (though he has to brush his teeth when we get home).
The biggest benefit that I noticed was at a store when he whined at me "I want this, Mommy can I have that..." all I had to do is give him a wide eyed look and say "I don't know...how many pennies do you have?" If he didn't have pennies enough, of course, he would ask for an advance but once I started nixing that he learned instead, to ask "what can I do to earn it?".
The key in this whole system is that you are transferring responsibility to them for whether or not they get treats. They choose to do things to earn pennies, they choose whether to spend them. They are in control. If they don't have enough, you no longer have to be the bad guy...you can sympathize with them and help them figure out how they will earn enough pennies to pay for what they want. "Oh, no, you don't have enough? Well, I bet if we go home and look at the living room it will be so messy you could earn three pennies if you clean it up, maybe even five if you do a really good job..." (BTW, if your kids are anything like my son, by the time they earn enough to buy it there will be something new that they want instead :)
This doesn't mean that you can't just spontaneously buy them gifts, we all love to buy things for our kids, but we have a hard and fast rule that if they ask for it, they buy it themselves (the single exception is Christmas, where they get to ask for one or two things that they really want)
BTW, when my daughter, who is as much a saver as my son is spender, decided to spend three years accumulation of golden pennies to buy the entire family a vacation at the coast, I got a really big lump in my throat.
Once they got too old for the "childish" concept of golden pennies, we were able to smoothly transition into the adult version...allowances and bank accounts. We had trouble with my son right off the bat (he normally had less than a dollar left in his checking account the day after payday) and had to put controls in place. He mows the lawn for his allowance, and he has a checking account with a debit card, but he is required to put $6 for every $20 earned into his saving account and if he "borrows" from the savings account it has to be paid back completely out of the next paycheck.
My daughter is saving for a car and has refused a checking account because she doesn't want to be tempted...