Final update, I think. Using an OBD scan tool, I saw that the fuel trims were still very low to adjust for the vacuum leak. I reset the ECU and the trims went back to around 0, and the engine is running much more smoothly. I think we can call this one fixed!
Okay, cracked air intake replaced. The problem has developed into a very rough idle when the engine is cold and/or wet. If I let it run (misfiring and shaking badly), it will run normally after a minute or so. If I press on the throttle while this is happening, it will run fine above 2k RPM. Sometimes pressing the throttle makes it worse and I get a fuel smell. The ECU throws a random misfire code.
Bad coils? Incorrectly installed plugs? Bad wires running to the coils? It definitely seems electrical at this point.
Figured out how to check it without starting the engine. The coolant temperature matched the ambient temperature, so I think the sensor is good.
While I was looking around the intake area, I noticed that there is a crack in the tube between the MAF sensor and the turbo. This could definitely be letting extra air in and messing with the computer's fuel mix. Currently investigating what kind of tape could be used to patch the leak until I get a new intake tube.
Started the engine and read the coolant temperature. It read 39C/102F, which sounds too hot to me after a minute of idling. Ambient temperature was 12C/54F. On my drive to work, temperature climbed smoothly from there to operating temp of 105C/221F.
I'm going to check the MAF sensor next. I have a can of cleaner.
Plugs are replaced. They were not the Bosch's used by BMW, so they had been replaced at some point in the past. Assuming the previous owner(s) folllowed the maintenance schedule, that would have been at 30k miles. I replaced them with the OEM plugs and took it for a test drive. Much better response and much better power.
My cold engine problem remains, however it's not nearly as pronounced. I am getting more convinced that it's a misfire. The coils were very rusty on the outside. My thought now is that they aren't making full contact and thus not always firing. Once the engine warms up, everything expands and they get better contact. Does that sound feasible? I tried cleaning off the rust with some steel wool but I couldn't get it all off and I didn't want to remove too much material. Time for new coils?
I have a 2008 MINI Cooper S w/ JCW package (dealer-installed at time of purchase; includes chip tune, cat-back exhaust, and bigger air-box) with 71k miles.
The car gets parked outside overnight. When starting up in the morning, the engine starts up normally, and can be revved normally, but when I pull out of the driveway and start up the road, it loses a lot of power and I have to feather the clutch and give it extra gas to keep it from stalling. The road is slightly uphill.
As the engine warms up, the problem gets significantly less, until disappearing completely once it reaches operating temperature (i.e. warm air comes out of the heater).
Could this be a sign of carbon buildup on the intake valves? This engine is known for this, but the walnut shell cleanup is $600 at the MINI dealership, so I'd rather not do it if it isn't needed.
I recently replaced the air filter (it was filthy).
I don't know when the spark plugs were last changed, if ever. I bought the car used around 60k miles. MINI recommends changing every 30k for JCW, every 60k for S, and every 100k for base Coopers with this engine. Could it be plugs?
Fluid levels are fine and no smoke is coming out of the exhaust. No CEL. It really feels like a limiter kicks in.
EDIT: I should also mention that it feels like overall power is lower (at any temperature) than when I bought it, but this could be my imagination. It's almost like it takes longer to reach 3000rpm.
EDIT 2: Now that I'm paying more attention to it, it does seem like it's misfiring a bit at idle. I also had some hesitation yesterday under load, followed by a puff of gray smoke from the exhaust.