First of all, definitely NBU to say no. And I'm glad he understands and is thinking of a plan with you - that sounds like a great step forward.
When you say "AIBU to say no this one time?" Does that mean you usually say yes even when you can't really afford it or don't want to say yes to something?
IME (I have ND DC as well) you (or well I at least) can end up stuck in loops like this, where you say yes to things because at one or more particular time(s), you can't handle the meltdown or the barrage of questions about it, but then it becomes an expectation/pattern for them so it becomes even MORE likely to trigger a meltdown or barrage of questions if you say no in future.
The best thing to actually do to handle that situation is do whatever you need to do in the short term (ie, either say no and handle the meltdown or say yes and eat the cost) but then come up with a time and place to approach the issue before the next time they ask, where you set out what you've decided the rule will be going forward - say, a set budget to cover school holidays, certain time limits for screens or whatever it is. Set it out in advance. It probably will invite a barrage of questions, but if I've set the time to deal with this as a discussion, then I am less likely to be stressed out by the questions and I can try to answer them honestly. It does usually help.
My main problem is that I tend to forget to do this, which is probably related to my ADHD, so I get blindsided by the next request, repeat the cycle and it gets entrenched until I feel absolutely sick giving in on the thing but I also can't handle the pushback when they don't want to hear no. I know it doesn't help them learn whatever I want them to learn by having the rule, and I know it doesn't help me because they are just learning that I have no bloody spine. (Unfortunately this just seems to push me into a completely dysregulated spiral and I don't know how to break out of it.)
But a couple of other things which might help.
Would it help to tell him "I need to think about this - I'm not sure if we can afford it after spending £300 last week. I'll tell you my decision tomorrow."
Totally agree that it helps to have a finite amount rather than a more vague answer.
If you're in the position of saying yes but you really don't want to say yes, can you say something like "OK - but this is the last bit of money for the holiday. Are you sure you want to spend it all on this, or would you like to save some for <whatever other thing he likes>?"