Yo desde hace muchos años solamente uso servidores dedicados y desde hace menos servidores cloud. 2 millones de visitas anunales pienso que no es demasiado, así que más o menos cualquier servidor te aguantaría. Quizás lo importante sería evitar los alojamientos compartidos, ya que tu sitio tendría que compartir el espacio con cientos y a veces hasta más de 1000 dominios en la misma máquina. No sé si es tu caso.
Si separas tu sitio a un servidor independiente, creo que un servidor pequeño (con 1 o 2 cores y 2 megas de ram, por no quedarnos demasiado cortos) te aguantaría bien.
Además ahora con los servidores cloud puedes empezar por uno pequeño y que el servidor vaya creciendo en función de las necesidades. Así que tampoco es necesario sobredimensionar la máquina, ya que puedes asignar más recursos siempre que lo necesites.
Yo personalmente prefiero no recomendar marcas. Lo que sí te puedo recomendar es características del servidor, y sobre todo la ventaja de contar con un servidor elástico, que pueda ir creciendo con el tiempo.
Instalar un servidor no es tan complicado. Tienes un artículo que te explica como hacer la instalación de un servidor cloud con PHP y todo lo necesario para configurar un dominio. En EscuelaIT tienes un curso completo para aprender a realizar estos pasos creando un entorno más profesional todavía, sin necesidad de paneles y explicando todos los temas relacionados con asegurar el servidor frente a ataques: Curso de Instalación, configuración y despliegue seguro bajo Nginx.