Your talking about the difference between synchronous and asynchronous net code, correct? CMP is asynchronous while co-op is generally synchronous since there is less margin for error due to latency or packet loss.
Meaning that there is no guarantee that the original multiplayer would experience the same latency issues.
I thought it was explained with Reach, or was it ODST, that firefight and co-op use a different type of netcode than competitive multiplayer. Generally there is more room for error in a CMP game than what's found in a cooperative type mode. Two players may disagree with who should die first, for example, due to latency, but when playing co-op, each player needs to be able to see the same thing, which is why a different type of net code is used. I could be entirely wrong, but I swear I learned about the different types of code used with one of the past Halo games.
Also, since you guys are looking into issues, is there any (microscopic) chance someone can look into the inconsistent frame rate? Was playing again last night and noticed the stuttering. It's a bigger issue than the co-op latency IMO.