Olá, André.
Quando você coloca o atributo autocomplete="off" o navegador, ao interpretar o seu HTML, vai entender que naquele input não está liberado a gravação de dados que já tenham sido informados por alguém. Dessa forma, quando você der um refresh na página, e "clicar duas vezes" nos campos ele não vai te mostrar nada, porque o autocomplete daquele campo está "desligado".
Agora eu entendi o que você quis dizer. Na verdade isso é uma configuração do navegador, que pode ser ajustada pelo usuário para que os dados do formulário não fiquem gravados.
Para o pattern do formulário você pode tentar algo como:
[A-Za-zÀ-ú~´`-]{4,}
O "À-ú" vai permitir que você coloque os caracteres especiais. Os outros caracteres basta adicionar à lista, lembrando que o " - " deve sempre ser o último caractere, pois ele é um caractere especial dentro da lista, assim como o " . "
Espero ter ajudado