I have found through the years that if the money isn't there, one doesn't buy fabric. Take your monthly allowance for fabric and divide it into 4 envelopes and put them in a safe place. Hide your credit cards also. Then, do not buy anything for as long as you can stand it. Go to envelope # 1 and spend part of it--not all. Put the part you did not spend into the budget for necessities. Gradually you should be able to wean yourself from overspending.