I have fixed this issue on my 2003 BMW X5, with Navi, non DSP.
I found out through research that BMW has integrated a speed dependent volume control into the stereo system. Basically, this is how it works: when you speed up the volume increases to compensate for road and wind noise. When you slow down the volume returns to the set level.
Unfortunately you can not turn this feature off, BMW did not incorporate an override into the programing of the stereo. However, you can adjust the sensitivity through the service menu (different than user menu). There is a range from 1 to 10, 1 being the least sensitive and 10 being the greatest. I adjusted mine to 1 and the automatic volume adjustments are almost undetectable. I can barely notice it now and it no longer bothers me.
I did this a few months ago and I no longer remember exactly what keys to press for accessing the service menu. I remember that it was very simple to do, and it doesn't require and special tools. I think you just hold down a key or maybe a combination of keys and the menu appears on the display. I am sure I found the procedure by searching the internet through Google. I remember downloading the manual for the stereo but I am not sure if that is where I found it. Anyway, now that you know what you are looking for it shouldn't be too hard to find.