One part of the answer is Refactoring.
First, start writing unit tests to ensure that you don't accidentally break anything with your changes. Then start improving the design, removing duplications etc. in small steps, running your unit tests after each step, fixing any problems if any of the tests fail, or reverting immediately if you run into a bigger problem than you can solve easily.
The other part is education.
People must be taught not to leave bad code behind. This is certainly a long term battle, as habits and thought processes are hard (sometimes even impossible) to change. However, without it, you will just continue to get an endless supply of bad code screaming to be refactored.
You may choose to do group code reviews to open discussion about good and bad coding habits, and spread the merits of the former. It is not enough to say "you must (not) write code like this", you need to convince people with logic and hard facts. Like "if you have this piece of method duplicated over the codebase n times, what do you think the chances are that if a bug is found in that method, it will be fixed in each copy of the method code?"
Your company may also need to revise the incentives and acceptance criteria for the consultants - if they can get away with writing sloppy code, they will surely keep choosing the easier path. If the company keeps valuing "fast delivery" over long term maintainability, nothing will change :-( So you may need to discuss this with management as well. One way to make them understand is this: refactoring means keeping the code clean, easy to understand and maintain. Omitting refactoring is like amassing debt on your credit card. You can get away with it for a while, but if you are not actively managing your buying habits and debts, it will inevitably crumble on your shoulders one day. In the life of a software project, bankruptcy is when the project becomes unmaintainable: it becomes easier to rewrite it from scratch than to add a new feature to the existing codebase. Or users get so fed up with the inferior level of support and features that they simply switch to the competition.