Hi Rob, i'm having a similar issue. What i found out is that AkAudioDevice registers to the LevelRemovedFromWorld callback. If this callback is called, AkAudioDevice will call its flush method and, like you said, will call StopAll from wwise api.
In our case, we are streaming levels when moving forward in the map. When the streaming happens, the callback gets called.
I didn't find any solution for our specific case. I might try filtering the Flush method if some specific levels are removed but not all.
I would be curious to know if you found any solution to your problem.
Cheers,