Anyone please jump in if I'm wrong, but I think that makes a huge difference, yes...
XML files, executables, and ROM sets are dependent on each other when it comes to generating the list of present, working, correctly dumped ROMs. The latest version of MAME might include a certain game, and your old ROM set might include a ROM for that game, but if the game has been redumped since that ROM set was created, then the ROM is useless, unplayable, and just taking up space.
Basically, you want all these things to match.
I'd update your ROM set so it's the latest version. If that's not practical, then it'd be much better to backrev your copy of MAME so it's the same version as your ROMs. DON'T swap in random XML files, you can generate them from the MAME executable itself using command line switches (can't remember what the switch is, but I'm pretty sure it's in the docs). You should definitely be getting more than 700 games in your list, depending on filtering options, of course...
Hope this helps!