Ответ.
Для подобных задач уже давно придумали AngularJS и прочие фреймворки.
Также, если использовать PHP-фреймворки, типа Symfony, а не писать свой велосипед как я, вопрос отпадёт сам по себе.
Там рендер шаблона (или чанка шаблона) происходит прозрачно. Вне зависимости от того, ajax это или GET-запрос