Seriously, _what_ are they gaining by eliminating access to third-party clients? If they want usage data, they already have all the API calls. If they want more ads, they can change the APIs to inject them.
Reddit wants freedom to arbitrarily change the design of their app and placement of ads, etc. Ads are a huge (primary?) source of revenue for them.
If they are tethered to supporting third party clients, it's harder to make reasonable estimates of how many captive users will see ads or new features.
Reddit could enforce ad presentation in third party clients, but to appease advertisers Reddit has to make guarantees around visibility. It's not enough to check if third parties are calling the correct API, they will actually need to regularly audit all third party clients.
It really isn't worth the time or effort if you can just charge third parties the cost to cover loss of ad views.
Then the third party app can choose between adding their own ads, or charging a subscription.
But having worked on platforms like this, this solution opens up yet another support vector. A cost that works for the most potential buyers may not be high enough to actually pay for support requests.