Você não precisa do ** e, para um único padrão, também pode usar --exclude . O padrão --include garante que os diretórios correspondentes ao padrão --exclude sejam incluídos na cópia.
rsync -a --include '*/' --exclude='.*.swp' /home/username/Documents/ remotehost:/home/username/Documents/
Se o seu nome de usuário remoto tiver /home/username como seu diretório inicial, você poderá simplificar ainda mais com um caminho relativo:
rsync -a --include '*/' --exclude='.*.swp' /home/username/Documents/ remotehost:Documents/
Tenha em mente também que vim usará outros nomes de arquivos para o seu arquivo de troca se um *.swp correspondente já existir ou estiver em uso. Mas você pegará a maioria deles com esse padrão único. Veja o que a documentação avisa:
If this file already exists (e.g., when you are recovering from a crash) a
warning is given and another extension is used, ".swo", ".swn", etc.
Você poderia adaptar o padrão de exclusão para usar .*.sw[a-p] se estivesse suficientemente preocupado.