With any sufficiently complex system, a major overhaul always creates more problems than it solves; there's enough and more "case studies" of the type you read about in Software Engineering to back it up. Things that were fixed over years and countless late night hacking sessions and painstaking iterations break and you have to fix them again.
The wisest programmer I've ever met once said that software development at scale is all about "letting go". I won't say I'm anywhere near that level of Zen, but I'm certainly much less OCD about the giant fire in the room. It's a pointless to make reversing entropy your life's work.