In my opinion you should not change the code that works. Doing so can cause new bug and wasting your development time for something that already there.
Instead, why don't you implement your new framework for new modules only? By doing this way, at least you can make sure that all your new codes are reusable and neat.
On the code duplication, I believe you should implement something called Code Duplication Detection Tools. In java we have something called CPD(which is part of PMD) [link]. By doing this, you will be able to know which part of code are duplicated and able to make priority to refactor based on number of duplication. Just start refactor these duplication on your spare time and put them in some utility class so it's easier to be accessed from your old and new framework.
Try to find the .net version of CPD-PMD.