Вообще не важно где держать. В случае абузы можно быстро переезжать, да причем так, что пользователи не заметят.
Вот например простейшая схемка:
Хостинга нужно два. Хостинг берите любой, главное чтобы требованиям соответствовал и стабильно работал. Посмотрите отзывы, аптаймы сайтов на этом хостинге и уже после этого покупайте. Базу данных храните на одном хостинге. Файлы - на другом. Думаю, не проблема подключить удаленную БД к любому сайту/скрипту (было бы желание).
Регистрируйтесь на cloudflare, копируйте доменную зону в клаудфлейр и делегируйте домен на их NS-серверы. А-записи ставьте тех серверов, на которых хранятся файлы сайта. Cloudflare поможет от несильного ддоса даже на бесплатном тарифе (главное правильно сервис настройте, мануалов в сети куча). В случае ухудшения - можно быстро перейти на платный тариф.
Зачем БД хранить на отдельном хостинге, спросите Вы. Вот в чем дело. Если поступит абуза на хостинг, что мол какие-то не те файлы Вы храните, то аккаунт хостинга заблокируют. База данных при таком раскладе не пострадает и Вы не будете ждать пока Вам техподдержка выдаст бекап БД. Вы просто быстро регистрируете новый хостинг у другого провайдера, на стороне клоудфлейр меняете А-записи на IP-адреса нового хостинга, максимум 15 минут простоя. А так как клоудфлейр нормально кеширует - сайт может быть многим быть доступен из кеша. Главное, чтобы у Вас был актуальный бекап файлов, а БД никуда не денется с другого хостинга (ну если ничего с ней не случится) =)