Le http-equiv sert à simuler des paramètres qui sont normalement renvoyés par le serveur web dans l'entête HTTP.
Les navigateurs n'ont aucune obligation d'en tenir compte.
Tout serveur HTTP correctement configué doit renvoyer Content-Type=text/html pour les fichiers .htm et .html
En principe, tu n'as donc pas besoin de déclarer cela dans ta page.
Pour le charset:
Le mieux, ça serait de n'utiliser que des caractères ASCII dans ta page HTML (c'est à dire uniquement 0 à 127) et d'utiliser les entities HTML pour les caractères accentués (& egrave; etc.)
Cela te permettrait de supprimer la déclaration du charset (qui effectivement semble poser problème dans certains cas ; voir le chapitre "Prologue XML et encodage de caractères" dans http://openweb.eu.org/articles/html_au_xhtml/ )


