É muito difícil dizer se um aplicativo da Web lidará com o número X de clientes em um determinado sistema. Depende strongmente de muitos fatores, incluindo como o aplicativo foi escrito, frameworks usados, etc.
A melhor opção seria encontrar algo que você possa usar para comparar / simular o uso do aplicativo. Como você já parece ter o aplicativo da web em execução, pode facilmente configurar qualquer tamanho de instância do ec2 por um curto período de tempo, executar alguns testes e, em seguida, desligá-lo.
Ser capaz de escalonar horizontalmente fornecerá um caminho muito melhor para lidar com o crescimento no futuro. O que acontece se o site se esforçar nas instâncias maiores ou se precisar ultrapassar 100.000? Você também pode descobrir que apenas mudar para instâncias maiores provavelmente não retornará um aumento linear no desempenho.
Uma coisa que se destaca -
The images are stored in the DB.
Armazene as imagens e qualquer outra coisa que você não precise especificamente que os servidores de aplicativos gerenciem em outro lugar. Como você já está usando uma pilha da AWS, o S3 é o local óbvio para imagens e outros dados estáticos. Não perca tempo do servidor de aplicativos em recursos estáticos.