No primeiro caso, o rsync aceita perfeitamente vários operandos de origem e com a opção -R
/ --relative
preservará seus caminhos , então
rsync -R backup/.bashrc backup/.config/i3/config dest:/home/remoteuser
deve resolver você. A opção --no-implied-dirs
pode ser usada com ela para ignorar caminhos compartilhados quando você tiver estruturas mais complicadas.
-R, --relative use relative path names --no-implied-dirs don't send implied dirs with --relative
Para a direção inversa, você pode fazer o mesmo com várias fontes remotas e o rsync deve ser inteligente o bastante para não fazer conexões separadas com o mesmo servidor.
Às vezes, pode ser mais fácil se você estiver fazendo muito isso para criar uma estrutura de diretórios falsa repleta de links simbólicos que inclua apenas os arquivos desejados e use a opção -L com uma única fonte.
Por outro lado, é sempre direcional: você não pode ter um único comando que faça com que ambos os lados tenham a versão mais nova, de modo que isso exigirá dois comandos. Você poderia usar um soquete de controle SSH compartilhado para executá-los na mesma conexão SSH, para que haja apenas um login real - veja ControlMaster
e outros na documentação do ssh config.