Как сделать так, чтобы шапка сайта не перезагружалась при переходе на другие страницы?
Вы хотите сделать одностраничник, чтобы контент динамично перезагружался не меняя некоторых элементов, ведь так? Ну чтож, могу посоветовать использовать js - jquery $( "#result" ).load( "ajax/test.html" );, .load.  Но если проект большой, не стоит использовать этот метод, советую изучить и понять что такое SPA (single page application), а дальше выбрать фреймворк в котором вы желаете работать, это может быть ReactJS, AngularJS, VueJS, мне лично больше нравится ReactJS. Стоит заметить что изучение данных фреймворков займет не мало времени, но оно того стоит!
Никак. Новая страница -> загрузка элементов новой страницы, следовательно "перезагрузка".
Если вы хотите реализовать сайт без перезагрузки, то вам сюда