The in-universe explanation is quite simple: they don't. They're speaking Klingon and the universal translator makes it sound like they're speaking English.
It's basically impossible to tell which characters speak English due to this device, as by the 24th century they're small enough to fit inside a Starfleet Combadge, as Captain Janeway mentions in The 37s:
Nogami: You are all speaking Japanese.
Jack Hayes: [to Nogami] Sounds to me like you're speaking English.
Janeway: It's because of a device we have, a universal translator. [points to her combadge] It allows us to talk to each other, even though our languages aren't the same.
The size of the device means it's basically guaranteed that their ship will have one installed for communicating with non-Klingons, especially as the Duras sisters from Generations have fallen out of favour with the Klingon Empire and basically survive by working with other species, such as the Romulans in TNG 5x01- Redemption II, Bajoran terrorists in DS9 1x03- Past Prologue and in Generations, as you mention, they're working with the El-Aurian Dr. Soran. As none of these species have any reason to speak Klingon or English, it's a fair assumption that they're all speaking their native languages and Lursa and B'Etor have a Universal Translator about their person.
Whether or not they're shown talking in their natural or translated language really depends on the director and writer. In some of the TOS movies, such as The Undiscovered Country, Klingons are shown to be speaking Klingonese whenever there are no humans around. In one scene, Kirk and McCoy are standing in a room full of Klingons speaking Klingonese, then we see there is a Klingon manually translating to English, before jumping back to the same actor speaking English, which indicates that the mouth movements matching up with the translation is simply a stylistic choice to avoid re-dubbing every time a Klingon appears to be speaking English in the movie.