Face it, you got a very selfish friend indeed. It's not a case of expecting back when you give and give so generously as you do, but she is taking advantage of your kindness, which shows this friendship of yours goes along a one way street and no more.
You seem to me like one of life's givers, rather than the takers, she on the other hand is not only a taker only one way, she's a grabber which is doubly worse.
You value her friendship, but she certainly does not value yours. Stop buying her presents unless its her birthday. Don't say no more about it to her, just change your ways. If she asks you for money or asks where's my gift, say '' I,m sorry I can't afford it anymore''. You'll soon find out what sort of friend she is then.
Personally I hate people like her, I say they are bitches, grabbing bitches at that, don't matter that you might have more money than her, your not her keeper, your money is yours, wether you earned it or just come from a richer family, that money is yours not hers. Remember Money does not buy happiness and nor does it buy friendship. Love and respect buy that. She's not a friend to you. You deserve someone who is.
Stop buying and the true light will appear, you'll see.