Why stick with an old version of MAME?
The current version is .173 (and in will be updated to .174 shortly).
The number of rompaths you're using is personal taste. Some users use only one, some split it up by systems etc...
First rule: cmpro needs a database, it takes it either from a MAME executable directly (prefered method) or a datfile. It will cleanup your sets based on this database. You should use the MAME version you're using for playing of course (still, I'd prefer the latest MAME release).
If you're sure that your sets are in a complete mess and spread over dozens of folders you can use the rebuilder to get everything valid from a source to a destination. The rebuilder is file based, not set based. It scans the source folder(s) file by file, checks it against the database (hash match) and adds each found match with the correct name in the destination.
Source is your garbage, destination is a clean rompath.
Afterwards you can use the scanner to check what is missing. Generally, the scanner should be the module to use, the rebuilder is more an adder or a transformator..