No, è l'unico metodo, al massimo puoi fare una funzione javasccript che fa sostituzione e scrittura, la la struttura del tuo html ne risentirebbe un po'.
Così:
	codice:
	<html>
  <head>
    <script type="text/javascript">
      function scriviHTML (testo)
        {
          document.write(testo.replace(/</g, "<").replace(/>/g, ">"));
        }
    </script>
  </head>
  <body>
    <script type="text/javascript">
      scriviHTML("<div>prova così</div>")
    </script>
    <div>Questo viene interpretato</div>
    <script type="text/javascript">
      scriviHTML("<div>Questo no</div>")
    </script>
  </body>
</html>
 
Oppure inserisci tutta la pagina tramite script, in modo da inserire un unico tag script :
	codice:
	<html>
  <head>
    <script type="text/javascript">
      function scriviHTML (testo)
        {
          document.write(testo.replace(/</g, "<").replace(/>/g, ">"));
        }
    </script>
  </head>
  <body>
    <script type="text/javascript">
      scriviHTML("<div>prova così</div>")
      document.write("<div>Questo viene interpretato</div>")
      scriviHTML("<div>Questo no</div>")
    </script>
  </body>
</html>