Почему async fetch не отрабатывает корректно?
Как и сказали выше, с сервера приходит кусок чистого html. Консоль ругается на начало этого html "<", т.е на открывающийся тег. 
На результат повесьте либо JSON.stringify(чтобы преобразовать в строку), либо outerHTML(преобразовать в сериализованный HTML-фрагмент), чтобы иметь возможность работать с пришедшими данными. Либо исправляйте на сервере.
Сервер в ответ на запрос отдаёт HTML, а не JSON. Соответственно, браузер не может распарсить его в resp.json()
Посмотрите в Network что приходит с сервера и сами убедитесь.