The problem with the collision code, in a nutshell, is that it was written for retail-level ship and weapon numbers and model detail. In those circumstances, it performs really well. But, as we have been busy adding stuff, making more and more elaborate missions and models, the approach used there just isn't adequate anymore. Sorting out which object collided with what, and where exactly the collision occured, is getting more and more expensive.
Tweaking the algorithms, or switching them out, is definitely possible. But, as this impacts a core functionality of the engine, it is not something where we want to risk breaking it.
Realize that collision detection is a hard problem, and that there are no silver bullets to instantly make it faster. In addition, I cannot stress enough that collision detection is one issue where we have performance problems, but it is not the only one.