htmlentities est une fonction PHP, pas une balise html. Elle sert justement à transformer les < et les > des balises en entités html.
Quant à <pre> je te suggère de lire la doc html : en effet, on ne colle pas de <html> dans un <pre> ni aucune autre balise d'ailleurs, c'est pour afficher du texte préformaté.
En gros, oublie <pre>, et utilise soit htmlentities en PHP, soit modifie à la main les < en < et les > en > des balises que tu souhaites afficher.