First of all -- app stores need to make money or at least break even. They cost a lot of money to run. So app stores take a cut of all transactions. If they let developers implement their own payment mechanisms, either in-app or with a single link, then developers will make every app free, with a link to their own payment, and the app store now becomes unsustainable and we're back to the same malware problems that plagued early versions of Windows.
At the same, there are legitimate use cases where an app is just one facet of a whole service, and so the app store lets users consume content purchased elsewhere, just not buy it directly -- see e.g. Kindle, etc.
Now how is an app store going to draw the line? Well an easy rule is: prohibit any information about payment, and prohibit a link to any page that has a link to make a payment or talks about making payments.
It's a pretty reasonable rule. So in this case, the developer had a link to a page that at the bottom has a link to make a payment. Not allowed.
Sure the developer can argue the reviewer had to "scroll to the very bottom of the page" but it doesn't matter. It's on the page. And then they say the reviewer had to "click through twice to find a way to contribute funds" but that's false -- clicking through twice is just part of the payment process. The main page already has direct links to Patreon and for PayPal.
Would it be nice if Google could add a subrule that links are allowed if they're at the very bottom of the page? Well how do you even define that, what if the page is a single sentence and then payment options? Or a rule that "donations" are allowed? Well then you get "donations" that come with "bonus functionality" and so forth, and a new line has to be drawn.
So is this annoying for the creator? Absolutely. But is Google hugely in the wrong? It's not perfect, but they had to make some kind of rule and the one they've got is pretty decent. Can the creator do anything about it? Yeah -- they can just link to a page on their website that doesn't contain donate buttons. It's really easy. Or else allow donations in-app but allow the app store to take their cut, which goes towards hosting, distribution and discovery of the app anyways.