Здесь уже больше зависит от твоих потребностей.
Обычно делают два отдельных git репозитория для фронта и бека.
Так ты всегда сможешь отдельно откатывать изменения для них.
Но возможно, так как разработку ведешь один, будет удобнее использовать один репозиторий и для бека и для фронта.
Только я все равно не рекомендовал бы делать коммиты в которых одновременно изменения и для фронта и для бека. Лучше их по максимуму разделять.
Если я правильно понял твои потребности, то тебе не стоит сильно над этим заморачиваться, а просто начать использовать. И со временем придет понимание того, что именно нужно.
Главное не забудь хранить все на чем-то вроде битбакета.
И да, чтобы не делать бекап структуры базы используй миграции, если еще не используешь их.
Первым делом я бы протестировал на другом сервере, а действительно ли будет забанен ip при большом кол-ве запросов. Такое встречается не так уж и часто.
Подмена user-agent вряд ли поможет.
Остается два варианта - или ограничить частоту запросов (Например 1 в секунду) или через прокси.
Как вариант сделать так - имеем массив с прокси и или достаем информацию через них подключаясь к ним по очереди, или достаем информацию асинхронно, где каждый запрос на отдельном прокси имеет паузу в пару секунд.