Pues funciona perfecto... pero hay que colocar el código de javascript justo después del input, y no en la cabecera de la página, que era lo que yo hice, y por eso no me funcionaba cuando puse en práctica en la web el código que me pasaste.
 
Así sí: 
Código:
 					<fieldset>
						<input type="hidden" id="reference" name="reference" />
<script type='text/javascript'>
 var ref = document.getElementById('reference').value = document.getElementsByTagName('h2')[0].innerHTML;
</script>
					</fieldset>
				</form>
			</div> 
		</div> <!-- fin DIV contacto -->