My other half and I did some experiments to see if we could replicate the bluetooth problem on-demand (both clear and muffled sounds) and... it turns out we can.
Here's what we found (and how you can test your own phone).
Call a friend via your bluetooth headset. One of you should be using the iPhone with iOS 4.x paired to a bluetooth headset, and the other should preferably have something else (and to simplify things, the other person should not use a speakerphone or headset... just have them use their phone directly.) IMPORTANT: Make sure you are BOTH in quiet rooms (there must be no background noise). As long as you each take turns talking, the bluetooth sound should be crisp and clear (e.g. as clear as it was back in the days of iOS 3.1.3)
Then, deliberately start talking over each other. With both of you speaking at the same time, the sound should go muffled for the person who is NOT on the iPhone (although the person with the iPhone wont notice.) Go back to speaking one-at-a-time and, provided you're both in quiet rooms, the sound should clear up and return to crisp unmuffled audio.
We spent several minutes on the phone going back & forth and found that if we were both in quiet rooms and took turns talking the sound was consistently crisp and we couldn't reproduced the 'muffled' audio bug. But when we both talked at the same time (deliberately as part of the test), we found we
always got muffled audio.
If the remote party has background noise, it'll be as if they are continuously talking since there will be non-stop audio coming from their end of the call, and this results in the iPhone having continuously muffled audio.
So it seems to us that the bug is related to noise cancellation. It's as if the iPhone treats the bluetooth headset as if it were a speakerphone and
presumes that audio output from the ear speaker would be picked up by the microphone and thus attenuates the microphone gain (probably over-attenuates) in some attempt to avoid feedback.