I just think an annual "donation" wouldn't work.
Let's say a PTA raises £5K per year.
Single-form entry school, Reception to Yr 6, 30 kids per class = 210
£5,000/210 = £23 per child.
Seems pretty darn reasonable - I would happily pay.
But it HAS to be voluntary. And that's where it gets tricky. Because some people would NOT pay it. So then the school is left with a funding gap - for instance, our PTA pays for school transport to swimming, say, and musical enrichment.
It can no longer afford both.
So the decision is made to charge parents (via 'voluntary donation', liek school trips) for the musical enrichment activity. But not enough people pay that (because they think their annual donation of £23 should cover it) and so you get into a vicious circle, and the only people who lose out are the kids.
Or you can organise some events, with a bit of pester power for parents and some entertainment value for the kids, and get your £23 that way. Some will spend way more, some will spend way less or not at all.
You can always just donate the cash instead, and clear your conscience, but I don't think fundraising events will ever go away.