1. Обработчики должны быть всплывающими (propogate), если работать с ДОМ. Перегружать нужно не всю страницу, а лишь объект (body, content, конкретный div и тп), в таком случае ДОМ обработчики (click, resize, keyboard ...) должны стоять на родительском для перегружаемого объекте. Читайте про event bubbling и event propagation
2. Интересующие тебя обработчики - можно симулировать событие. В частности onload срабатывает 1 раз на загрузке страницы, и фффсее. НО, в таком случае при загрузке нового конетнта, кто мешает вызвать обработчик принудительно? Тот же обработчик на onload и тотже на AJAX success
3. Посмотри в сторону JSONP
4. не мучайся, возьми Vue