So I recently terminated my Spotify subscription and moved my library to Jellyfin.
For my phone client, I use Symfonium. There are other options available (even FOSS options if you prefer), but I liked Symfonium’s UI the best. It also has a rolling offline cache setting that I find very useful. However, it does have a one time fee of 5 USD. But the client is completely up to your preference - no right choice.
If you care about Last.FM scrobbling, use something like Pano Scrobbler on your phone.
For desktop streaming, Jellyfin isn’t required. Use which ever media player you like best.
As for accessing your Jellyfin server outside your home network, Tailscale is an option. It was relatively easy to set up, even for someone who’s dumb with networking.
I’ll also add that if you’re looking to replace the recommendation algorithm, you can use Last.FM, AOTY, RYM, or even Instagram (I follow a lot of artists and the recommended posts when I go to search something have actually been decent. really strange and perplexing)
Also, if you find any CDs you don’t care for anymore, see if you can donate them to your local library :)