You could think about using Spotify Premium. As it is the non-free product offered by Spotify itself, it is not really an ad-blocker, but it does give you what you want. You won´t get any ads, and you pay very little compared to the large wealth of music offered. You mentioned that you would also pay for an ad-blocker.
There is no legal way to do this.
There used to be lots of ways. The Spotify internal API uses a websocket to deliver an ogg vorbis stream to the client. Their APIs used to allow you to intercept the raw, uncompressed, interleaved PCM data at CD quality right before it played. It was possible to use this along with libmp3lame to produce good quality mp3s.
Currently, these features are available from Spotify itself. They call it "Spotify connect".
The ability to control Spotify on one computer from an Android tablet is particularly good.
However, all devices must be on the same account, as far as I know.
XSpotify can do that, it's also open source. If you have a Spotify Premium account, it can download your music in 320 Kbps (160 Kbps in Free account).
I've tried it recently. It extracted the music but the file was corrupt so it did not play for me. And the output format is OGG because that's what Spotify uses.
Another option is a ...
I made my own extension to answer this problem.
It allows you to use your keyboard media hotkeys to start/pause next/previous tracks from Youtube, Youtube Music, Spotify, Tidal and Deezer
Check it out on the Chrome Web Store
It's also open source fork it on Github!
I found a program that doesn’t mute the Ads but removes them entirely. It works by blocking the IP’s from the Ad servers and it isn’t running in the background, you start it once and it adds the IP’s to the windows firewall. Works great for me :)
When you are using the web player of spotify (accessible via https://play.spotify.com/) with Chrome, the Plugin Adblock Plus automatically removes / skips (anyway: you won't hear them) the sound ads between songs.