I am a volunteer with a youth organisation - not a preschool, but an extracurricular activity/charity that similarly runs on a shoestring and tries to eek out the money and include everybody, and so on. We don't have staff fees to pay as all the leaders are volunteers, but we do have rent, insurance, activity materials and all the other costs to pay.
Something I have learnt over the last 20+ years doing this is: it costs what it costs. And parents need to have that spelled out to them. Yes, we have to be careful with the money we spend, but once we've done all the 'getting good value for X/Y/Z' exercises, what we're left with is a pretty fixed expenditure. And either we raise that money from parents, or the wider public/grants.
As a youth group, we charge parents a realistic fee - actually pretty much what it costs. We then do 2/3 fundraising events a year - that target the wider public, not the parents: a bag pack, service at a local event for which we get a payment in exchange, etc. We have found that our parents are busy people and in the main, relatively cash rich but time poor. They don't want to be forever sponsoring their own child to skip/sing/be silent (although the latter does have it's appeal!!!). They'd rather just be given a bill.
I assume that as a preschool you get a lot (most) of your funding through the 15/30 hours free childcare scheme - and that that doesn't actually meet your costs. Have you spelt it out to parents: For every half day your child attends, we have a shortfall in income of £X. So each term, we need to raise an additional £Y for every session in the week DC is with us - if DC is here 5 mornings, we need to raise 50p x 5 x 10 weeks = £25 top-up. Obviously, put in your own figures! But maybe tell parents how much you need, and invite them to just give you that.
You can't make them pay it, of course, but I'd bet that a lot would, just to avoid feeling obliged to attend a fundraiser - especially if you're in an area where scarf tying features on people's agenda...
And then you can focus your fundraising efforts on covering a much reduced shortfall. And it is much easier to apply for grant funding or even just a slot at the supermarket for a bag pack, if you can specifically say that you are fundraising to meet the shortfall for families who cannot afford to pay themselves.
A fun way to ask for a donation is to hold a 'non-event'. You can find instructions all over the internet - there's one here. Basically - sell tickets to an event that isn't going to take place. You receive the money, they receive the luxury of not having to go out. You can make it as wacky-sounding as you like - it can be a lot of fun.