Take the best of both. Organize your project into logical pieces, preferably using a reverse engineered UML class diagram, and see where the interconnections are. Anything that is loosly connected is ideal for a refactor. In any downtime, inspect the strong connections as well and see which groups can be completely split off into separate modules with the fewest changes. Figure out whats really going on at a high level before just rewriting the whole thing.