spark plugs was a good start, you could have them yourself, save a lot money, check the intake boots for cracks, really look at the lower intake boot, the small arm usually cracks, you have to feel it not just look at it,.
all e46 have a vanos problem the seals dry out, symptoms are cold start, low power below 3000 rpm, you dont need to change the vanos, unit just the seals.
your car was design for premium fuel, why would someone say use lower octane?..
read these
Beisan Systems - Procedures - Double Vanos Procedure Vanos seals solution - E46Fanatics
thanks