A mvn archetype won't be a good solution. That's for when you want a way of generating similarly structured projects. It can be argued that archetypes actually promote code duplication which is what you're tasked at removing.
What you probably need to do is create common artifacts (jar files) containing the common code and put those artifacts as dependencies to the current projects so that way the reusable logic is in one place.
How to identify the duplicated logic can get complicated depending on the level you're willing to look at this from. e.g all persistence logic could be abstracted into classes that deal with persistence for any tables (e.g using JPA if it wasn't being used) but that might require a big rework of existing logic.
A practical way would be to use a code metric tool across all the projects' code base (e.g jdeodorant). Perhaps even better would be to start writing
unit tests for the existing projects. If you have to write unit tests you will be forced to write reusable code. That should point out what bits of code are reusable and can be moved to a common jar file.
Also remember however that,
almost all abstractions are leaky.