A resposta simples é usar aspas duplas: -
content1="$(<content-1.html)"
echo "$content1"
As aspas duplas permitem a expansão de variáveis, mas não de máscaras de arquivo. As cotações não aparecem na expansão. Por isso, sempre use aspas duplas ao fazer referência a content1 .
Na verdade, a primeira instrução não precisa estritamente das aspas duplas, já que o bash não verifica novamente uma linha de entrada, mas não causa danos.
Portanto, seu problema não é ler o arquivo, mas como você usa seu conteúdo.