В двух словах это не объяснишь, ибо тема достаточно объемная, но наводку постараюсь дать :)
1. "всякие там REST API" - это ваш основной инструмент в клиент-серверной архитектуре. Рекомендую прояснить это понятие полностью, от и до.
2. "Если это клиент-серверное приложение, то для него нужен будет сервер" - сервер в основном нужен для обработки данных и сохранения/извлечения их в/из базы данных. Клиент - для представления этих данных пользователю.
3. Да, нужно брать платный хостинг. Желательно VPS.
4. По реализации сервера много возможных решений. Самые популярные: Laravel и Node.js , например.
5. Материалы для чайников: Google.com (-: По крайней мере теперь вы понимаете что именно нужно гуглить.
Удачи!