1) Как защититься от ботов. Если боты не написаны специально под ваш сайт, то просто чуть-чуть переделайте код регистрации (например, сделайте поле email приманкой или считайте код подтверждения яваскриптом или флешем) и боты отвалятся. Они же привыкли к стандартным формам.
Не хотите переписать код/нанять кого-то/лень/ищите кто за вас все сделает бесплатно? Мучайтесь дальше тогда.
Запретите или сделайте подтверждение телефона для регистраций из проблемных стран (список стран ниже), с тора и прокси.
2) Про высокую нагрузку. Не стоит использовать shared hosting вообще. Сейчас облачные сервера с минимальным конфигом очень дешевые и стояит примерно столько же, сколько ваш хостинг, но там вам никто не будет парить мозги про соотношения трафика и загрузку процессора, сколько готовы оплатить, на столько и грузите. Сайт на shared хостинге легко положить даже со школоботнета — хостеру проще отключить нагруженный сайт, чем искать причины проблем.
На своем сервере всех ботов можно легко забанить при помощи iptables и ipset. Я бы советовал не ждать, пока к вам придут боты, а превентивно забанить все IP из стран: Индонезия, Таиланд, Китай, Филиппины, Польша, Бразилия. Как показывает опыт, в этих странах люди не слышали про антивирусы, используют ИЕ (вот идиоты), а провайдеры игнорируют абузы (почтовые ящики из вхуиза не работают либо переполнены и не принимают письма). Как вы понимаете, ценные посетители на ваш сайт оттуда вряд ли придут, а вот спам, трояны, ботнеты и прочая дрянь — легко. Я бы лично эти страны вообще от интернета и цивилизованного мира отключил, достали уже.
«Анти-DDOS» сервисы нужны при атаке хотя бы от полгигабита, меньший трафик легко банится вручную на iptables. Бесплатный антиддос (и блокировку упомянутых стран), кстати предлагают сервисы вроде cloudflare. Зачем платить конские тарифы всяким вымогателям из анти-ддос сервисов, когда можно не платить?