Edge e Chrome podem ser confundidos por causa da engine Blink?
Sim, se o parser checar o token errado primeiro. Os dois incluem Chrome/versão na string, herdado do Chromium, mas só Edge inclui também Edg/versão (com um só g, para não colidir com regras antigas do Edge baseado em EdgeHTML). Um parser correto procura Edg/ antes de tratar a string como Chrome puro.
Por que a versão do Chrome tem quatro números, tipo 120.0.0.0?
O formato é maior.menor.build.patch. Desde que o Chrome adotou esse esquema, os campos menor e build ficam fixos em zero na maioria dos lançamentos estáveis, e só o número maior e o patch mudam entre versões, então uma string terminando em .0.0 é o padrão, não um erro de captura.
Um navegador pode enviar o User-Agent de outro de propósito?
Sim. O Brave, por exemplo, envia deliberadamente o mesmo User-Agent do Chrome sem nenhuma marca própria, para evitar que sites o tratem diferente ou usem o nome do navegador como sinal extra de fingerprinting; a única forma de identificá-lo de fato é pelo client hint Sec-CH-UA ou pela API navigator.brave, não pela string.