Как правильно одновременно разрабатывать приложение на react и react native?
Если приложение переписывается на react, то одновременно держать react-native + react базу поможет react-native-web пакет, но там нет FlatList до сих пор, ждут давно.
Для одинаковых компонентов - все просто, один файл. Если же для какого-то компонента требуется различный код, можно делать два файла xxx.web.js и xxx.ios.js (например), и на стадии сборки в сборку включать только те, что подходят под проверку (для веб собираете или для mobile).
Общие компоненты (uikit - кнопки, надписи, стили и тд) - все можно вынести в отдельный пакет / отдельную директорию. Вы пишите, что у вас уже есть - ок, используйте, если они готовы для этого (но я думаю вряд ли, надо как минимум адаптировать/переписать будет)
1. Скорее нет, чем да. React-native не умеет рендерить html. Есть пакеты, которые добавляют такую функциональность, но на самом деле они просто делают так, чтобы рендер не ронял билд - привычной функциональности связанной с html-элементами не будет.
Со стилями тоже есть свои особенности - react-native реализует многое из CSS, но кое-чего привычного в нём нет, а то, что есть, иногда работает не так, как ожидается.
Словом, учитывая повышенные требования к универсальности UI kit, разумнее его воссоздать в react-native.
2. Можно. Нужно ли - решайте самостоятельно. Для начала я бы на вашем месте дублировал логику, делал адекватную архитектуру внутри экосистемы react-native, а когда поймёте как там всё устроено, выносите общую логику в пакеты и переиспользуйте.