Стоит ли разделять сайт на backend и frontend?
Это называется Singe Page Application.
Если вас не смущает геморой с индексацией сайта в поисковике - подход весьма оправдан.
Плюсы:
- ослабление связей внутри системы, упрощается серверная часть (по сути у вас там красивая REST Api должна быть)
- общее увеличение отзывчивости системы (если грамотно спроектировать фронтэнд)
Минусы:
- общее время разработки может увеличиться в зависимости от проекта.
- необходимость добавлять на сервере генерацию page fragments для поддержки поисковиками. Есть конечно варианты использовать на сервере phantomjs для создания этих самых фрагментов.
Это значительно экономит ресурсы разработчиков, т.к у Вас исчезает дублирование функционала в коде. Считаю что это единственно правильный путь в ситуации когда фронтендов много.