I just moved my bitcoin data out of ~/.bitcoin by using the -datadir flag to bitcoind.
$ bitcoind -daemon -datadir=/external-drive/btcHowever, I found that I now needed to pass -datadir=/external-drive/btc to bitcoin-cli in order for the passwordless authentication to succeed.
Rather than passing the flag every time, you can also change where bitcoind will stash the authentication cookie (which is what enables passwordless auth). Moving it back to ~/.bitcoin/.cookie does the trick, like so: