A melhor maneira de proteger os seus pares de chaves do EC2, que são apenas chaves SSH, é criptografá-los com uma frase secreta (e seguir seu processo normal de gerenciamento de senhas para essa frase secreta). Supondo que você esteja usando o linux, você pode usar ssh-keygen -p -f $file
para criptografar a chave. Você deve manter um backup, de preferência fisicamente seguro (ou seja, um pen drive em um cofre ou algo assim). Estou assumindo que você está falando sobre a metade privada da chave, já que a chave pública é obviamente pública.
Teoricamente, seria melhor armazenar a chave em um TPM em sua estação de trabalho ou em um cartão inteligente, mas geralmente há problemas práticos com essa solução ao lidar com chaves SSH.
Se é ruim armazenar a chave em seu PC em casa depende se isso é uma violação da política. Se não for, honestamente, há poucas razões para considerar isso pior do que armazená-lo em um laptop que você usa para o trabalho.
Você certamente pode manter um backup da chave no S3 (em vez de um backup físico). O modelo de ameaça é tal que você já está tendo um dia muito ruim (em termos de vazamento de dados e interrupção de serviço, entre outras coisas) se alguém puder acessar sua conta da AWS. Mas, a menos que haja alguma entidade de segurança que possa ter acesso ao bucket S3 com sua chave, mas que não tenha permissão para efetuar login nas máquinas, você precisará encontrar outra maneira. Se você armazenar uma cópia no S3, pelo menos, verifique se ela está criptografada com uma frase secreta.