Eu só criaria um front separado caso isso fosse realmente preciso.
Um projeto grande o suficiente para isso!
O que, 90% dos projetos não é!
Crio front e back de forma separada ?
Você cria como desejar seu projeto!
Quais as vantagens e desvantagens de ambas as escolhas?
As vantagens é desacoplamento, e poder ter muita gente trabalhando no mesmo projeto
sem muitos problemas de interferencia. Ótimo para equipes!
As desvantagens são complexidade. Mais trabalho pra fazer as coisas!
Mais uma pilha de tecnologia para cuidar!
O que isso implica na hora do deploy?
Como é mais complexo, o deploy fica mais complexo tbm.
É uma outra pilha de tecnologia. Isso precisa ser levado em conta.
Será preciso cuidar de mais de um lugar e fazer mais testes
Qual das escolhas teria o melhor custo benefício?
Isso depende do projeto!
Cada projeto tem suas particularidades!
Em projetos pessoais meus, por exemplo.
Nunca usei front separado! Não precisei.
Eram todo médios a pequenos.
Eu não queria mais uma pilha de tecnologia pra cuidar!
Um site de padaria não precisa de nada separado, um blog, um
sisteminha pra uma loja.
Mas como disse antes.
DEPENDE. :)
Abraços!