Что использовать на backend для SPA приложений?
Yii2 или другой php фреймворк, то какой вообще в нем смысл если бОльшая часть его функционала будет не нужна, контроллеры, экшены, роутинг,
С чего это вдруг? Для REST API как раз контроллеры, роутинги и т.п. ой как нужныт.д, по сути мне от него нужны только модели будут и все.
А вот как раз модели лучше делать независимыми от фреймворка, т.к. модели это бизнес-логика, и когда она зависит от фреймворка это Bad Practice
Так же возникает вопрос в рациональности использовать базу mySql или же переходить на mongoDB
Рациональность использования базы данных никаким образом не относиться к взаимодействию с API. Без разницы используете ли Вы REST API или нет. Все зависит от того какие задачи решает Ваш проект, какие данные в нем хранятся, какие требования у Вас к базе и т.п. Во общем ответ на этот вопрос зависит от множества факторов и индивидуален для каждой задачи. Есть ряд задач для которых оптимальным является использование реляционной СУБД, есть задачи для которых лучше использовать документированную базу. Что лучше на данный момент использовать на бэкенде и что на практике используют чаще? 
Все опять таки зависит от Ваших требований и задач. Нужно сделать быстрое приложение за короткое время - используйте Yii, нужно сделать приложение с хорошо организованной архитектурой используйте Symfony
если вам не нужен серверный рендеринг то особого преимущества в node.js нет
если у вас все работает на mysql то смысла переходить на mongodb тоже  нет, nosq нужно использовать с умом и когда он нужен, если он не нужен то и не нужно его использовать Вот если я буду использовать Yii2 или другой php фреймворк, то какой вообще в нем смысл если бОльшая часть его функционала будет не нужна, контроллеры, экшены, роутинг, хелперы и т.д, по сути мне от него нужны только модели будут и все
а в чем проблема то ?
если вы хорошо знаете Yii2 используйте его, не знаете Yii2 но знаете php возьмите микрофреймоврк slim или аналог