I have same issue. did you every get it fixed?
1999 328i with 130k started runing a bit rough at idle, then after a few weeks got worse. Now if let to idle for 10-15 seconds loads up, have to turn engine off and keep RPMs above 1000 to drive. Sometimes in one mode it pings a lot but has power, then sometimes is has no low end, but when punched acts fine and with no pinging.
already done O2s, plugs, coils, crank and cam sensors