Então, como eu não recebi nenhuma resposta, imaginei que iria postar meu trabalho atual, ainda que meio brega.
Como o problema só parecia acontecer quando eu estava usando o zsh, adicionei o seguinte ao final do meu arquivo ~/.zshrc
para forçar o nano a sempre abrir no bash em vez de no zsh.
# For some reason, when I open nano in zsh it's incredibly slow
# So instead, alias it with this function that forces nano
# to open in bash instead of zsh.
function nano() {
bash -c "nano $@"
}
Embora isso provavelmente não seja a melhor solução, não tenho ideia do que está acontecendo ou de como resolvê-lo. E, por enquanto, isso corrige isso.