The cache is there for your benefit (and theirs too), so that you don't have to constantly re-download the same song over and over, which matters to some people that have bandwidth restrictions. There's a button in their settings that lets you clear it with ease
It's a few clicks in any browsers dev tools or a few more clicks in the settings, and is the same for every website.
With a native app the cache could be in any number of places on your hard drive, you have to depend on a function being in the app to clear it, deleting it manually might have unknown side effects, and it's all nonstandard.
Websites can’t write to arbitrary places on your FS and the browser has a central way to delete the data that a website can write.
Desktop apps can write anywhere, and what it writes might or might not be a cache, so there’s no way to centrally manage it. Apps like cache-cleaners simply hard-code common cache paths for common apps.
Eh? People have some control over native apps too. It’s just a trade-off of what you want to control. I like how I can control the time I spend in my workflow just because native apps are faster and more battery-efficient, and don’t override OS gestures and mouse events within their own windows.