One suggestion I heard of previously to reduce spending (and successfully used) was telling the kids that all souvenirs should be picked up at the end of the day.
Two reasons:
1- You're not stuck carrying them around all day. (Yes, I know that if you're staying at the resort you can have things shipped back).
2- It tends to limit the spending. Otherwise, you're buying in the morning, afternoon, and evening.
Setting early expectations works on my DS anyways.