I'd have just told her that if money is that tight, you'll have to take HER present back to the store, too!
Seriously, I'd look into marriage counseling. If she won't go for it, here's what I'd do:
She sounds like a spoiled brat that's gotten away with behavior like this for her whole life. So treat her the way you'd treat a 2 year old throwing a tantrum. Basicly, ignore it. What she and that 2 year old are looking for is A) a reaction and B) to get their way. If they are ignored long enough, they eventually learn that throwing tantrums does not work.
Now, it's easier to ignore a 2 year old than your wife, so what I'd do is this. Kill her with kindness. Calmly explain your side of the story, DO NOT get into a fight with her and just move on. This will take time, it may take a lot of time. But hopefully, she'll eventually figure out (just like that 2 year old) that tantrums dont' get her the reaction she's looking for.
Good luck!!!