Я думаю, что этот вопрос слишком сильно давит на субъективное, возможно, но лично я считаю, что лучший план - запрос вернуть JSON, который описывает и контент, и механизм (под которым я имею в виду метод javascript) для сериализации этого в HTML, если существует множество возможностей. Это экономит полосу пропускания и (как вы указали) сохраняет ваше разделение интересов. Последнее, что я действительно хочу, - это чтобы мои ребята-фронтендеры имели дело с произвольной наценкой со стороны серверных ребят. Абстракция это хорошо.
Я не совсем понимаю, почему вы чувствуете, что сгенерированная JS разметка неуклюжа или трудна. Горстка JS-методов, которые анализируют и генерируют стандартные структуры JSON, кажутся мне легковесными и тривиальными, хотя я должен признать, что я всегда катал свои собственные здесь. Почти наверняка есть рамки для этого (кто-нибудь?). Если нет, то у меня есть отличная бизнес-идея ...