Por el momento, el único programa de diseño web que conozco que permite crear elementos de libreria en los que definir fragmentos de código html pertenecientes a elementos o partes que van a repetirse en varias páginas de una web es el Dreamweaver.
Si no estás usando ese programa no es necesario que sigas leyendo, pues no te va a servir de mucho. De todas formas seguro que puedes aprovechar el resto de alternativas que te propongo.
Se trata de lo siguiente. Cuando tengas partes que van a repetirse en varias de las páginas de tu web, como el menú de navegación, la cabecera, el pie de página o incluso la publicidad de tu web, basta con crear un elemento de libreria y colocar el código html correspondiente dentro.
Después tan solo tienes que ir creando el resto de páginas y cuando toque poner el código html de ese elemento de libreria, en lugar de escribirlo de nuevo, simplemente pegas el elemento.
Lo bueno de esto es que si un día quieres modificar esa parte, basta con abrir el elemento de libreria y hacer los cambios que quieras. Al guardarlo el Dreamweaver te pregunta si deseas actualizar las páginas que leen ese elemento y tras decirle que sí, modifica todas las páginas que lo contienen en tan solo un par de segundos. Luego solo tienes que subir a tu servidor o hosting todas esas páginas y listo, solucionado el problema de modificar una a una todas las páginas de tu web cada vez que haces un cambio. Mola, no?