Hey guys, great forum! I honestly tried to find the answer first before posting

.
Here's the problem with my 95 530i :
On full acceleration, once the rpms get to about 4000 the engine throws a code and bucks and acts like I just hit redline. It will drop a good 1000 rpm, continue trying to accelerate back to the cut point, etc., etc. Not what you want when you're trying to accelerate onto the freeway.
I put about $600 into finding a solution several months back, only to have the mechanic give up and recommend I take it to the dealer. Since the nearest dealer is 50 miles away, I figure I'd try here for some ideas.
What the mechanic did find is that the code was indicating the crankshaft position sensor. He replaced it. He also replaced the camshaft sensor. No joy. He even swapped out a few other sensors with another 530 in the shop, to no avail.
The only other clues I have is that it seems to be somewhat temperature sensitive. When it's cold out (and the engine's cold), it happens as low as 3200 rpm. When it's hot out, it generally won't hapen before ~4200 rpm. No matter what, it definitely won't make it past 5000 rpm.
If no one has any ideas, can someone at least recommend a good service shop in the DC or Baltimore area? Any help is greatly appreciated.
Bob