Sto facendo esattamente la stessa cosa e quello che ho imparato è che arduino legge i file con formato 8.3 cioè 8 caratteri per il nome e 3 per l'estensione; ti consiglio di rinominare così il file che contiene il codice html.
Inoltre prova a cambiare il codice da così:
while (htmlFile.available()) {
client.println(htmlFile.read());
}
a così:
String html;
while (htmlFile.available()) {
char c=htmlFile.read();
html.concat(c);
}
client.println(html);