We have one of those people, too.
Aside from being firm and blunt (this person thinks "rude"), the one thing that worked for me was to tell them I would gladly sell them whatever it is they wanted. So, next time she wants your fabric, offer to sell it to her at a reasonable price. I guarantee you, she won't want it anymore. If you do this several times, she will quit asking and look elsewhere for her "free ride."
Don't let her get you down. Most people aren't like that.