Revert to the piggy bank method and only buy it when you have enough pennies.
Maybe that's the answer, buy everything in cash, even if you go into an overdraft it will stop at some point. Using real cash forces you to realise spending is actually real money, and when the cashpoint won't give you anymore you have to stop. It's also even easier to see the £26.37ph you earn before tax, NI and 3% pension deduction as a £20 note. You spend it on a takeaway and that was one hour of your life at work to buy it - and that's on a gross salary of £51,421. If you are on the average wage of £39k, that £20 took you 1hr 17 minutes to earn after deductions. It brings home the reality.