It turns out that the problem is with the AppArmor profile for transmission-gtk, which denies access to anything other than its own config directory and ${HOME}/${XDG_DOWNLOAD_DIR}/**. I'm not comfortable modifying that, so I'm just going to move things around.