Prior to ads and the current dark patterns you see on the site, Reddit primarily tried to monetize through Reddit Gold. It didn't work, and users never purchased it in any meaningful volume to keep the site afloat. So while you wouldn't give them money for the decisions they've made recently, they weren't making enough money when they were (ostensibly) making better decisions.
How would you go about solving this problem? It's a genuine question without snark - if social media companies are unable to stay sustainable through direct user funding, then they're going to look to ads or other sources eventually.