You don’t give Google enough credit: They totally can add a “report spam site” action in the search results, but they don’t, because they don’t care. It would help immensely to have websites disappear from search after 100 trusted Google users complain about them (after manual review). This stuff already exists and works on Google Maps.
Even the data collected from a personal blocklist would be useful for them, without explicitly reporting sites, but again they just don’t care.
They’ve been in the business of parsing websites for 25 years, surely they can tell ad-infested spam websites apart from good ones.