Definitely not impressed by Stafford; many of her "meanings" are definitely incorrect, though there are so many eccentric ones (for instance, her listing of Michael as "spiritual patron of soldiers") that I'm not sure she intends them to be etymologies. Just looking at other names on the same page as Michael, she has Mercer as "affluent", when it's from an Old French word meaning "merchant"; Meyshaun as "searching", an interpretation which seems completely off the wall; Milburn as "volatile", when it goes back to an English place name meaning "mill stream"; and Mingo as "flirtatious", which seems just as off the wall as Meyshaun. The only thing this book has going for it is an especially large number of names, but if you are interesting in scholarly etymology or history of names, it's about the last book I would recommend.
Narter's book is of course just one big joke which he doesn't mean anyone to take seriously. Browder's book has been around for quite a while and I don't have one in my office in order to comment on it.
Baby Names for Dummies does seem to be one of the better books on the market at the moment, though MargaretRose, the author, does leave off the all-important question mark from the original meaning of Michael; it's very important in interpreting what this name meant to the early Hebrews to know that it was "Who is like God?", NOT a statement.
Hanks & Hodges's name dictionaries from Oxford University Press would be one I would recommend.