Как организовать поток запросов к JSON API через Node.js + Express + React приложение?
Я бы посмотрел на это так: Node.js сервер занимается исключительно React приложением, Rails сервер — API. Возложив ответственность за API на Node.js сервер добавляет сложности в архитектуру и большую нагрузку на сервер рендеринга приложения, имхо, конечно.
То есть, первый вариант предпочтительнее. Тем более, когда Rails сервер — единственный источник API, то проще контролировать возможные будущие клиенты (больше приложений скажем).
Третий вариант: фронтендом на сервере ставится nginx, и он проксирует запросы к Node (для рендера) и к Rails (для ajax на "/api"). Таким образом не нужны CORS запросы, для клиента это будет выглядеть как единый сервер.