We find that if you always provide catering, it's taken for granted, and people "will assume" that a great They somewhere else is paying for it. They probably have no idea that you are doing it charitably.
I think the idea of asking everyone to bring a small plate of food this year is a good one - you can say that you'd like to get some variety by people bringing their own. If they demur, be honest with them, and tell them that you can't afford this year to do it again for nothing - they'll understand.
I have to say that your £1 is really underselling yourself, that's 50p an hour.... do you think people wouldn't come if you asked £2 (if only to cover your heating, insurance, coffee, etc)?