I work around this by talking to the NPC before asking for chatter.
Additionally, I tinker with my @voice so that they'll be forced to hear me speaking the preferred language. Being spoken to in a particular language, and noticing it, is what makes the NPC switch languages, if they know it. This is why there's a lag - the speaking message isn't reliably shown until something happens to make it be shown. Switching languages doesn't seem to be enough, the @voice message has to be changed too in order to be really good and sure that the game will fire off the speaking message. We can make this happen by altering our @voice message, then the next time anyone hears us speak, they'll get the message including the language.
Once I know we're on the same page, then I ask for chatter.
I'm not shooting down this idea, far from it, I'm just sharing the workaround.