Per essere chiari, il problema che stai descrivendo si verifica solo con i crawler e le richieste API?
Dalla documentazione di Google:
Inoltre, il crawler invia richieste HTTP senza impostare
Accept-Languagenell’intestazione della richiesta.
Poiché Google non imposta l’intestazione Accept-Language, questo approccio non funzionerà per risolvere il problema con Google.
L’attributo lang del tag html è sempre impostato sulla locale predefinita del sito. Questo vale anche quando un utente seleziona una locale diversa da quella predefinita del sito dalla propria pagina delle preferenze.