You're right that the hard part is finding the geographic locations of historical place names (and, working out incomplete and misspelled names).
Places
Do you have a link the LoC geonames api? The only Geonames api I'm aware of is at geonames.org, and there's also NGA geonames. Both are really limited to modern names.
There's the FamilySearch Standard Placename finder which does have more historical names, but it has significant long-standing errors that make it unreliable to use. Example: the town of Midlothian in Maryland, USA, has been given the same alternative names as the Scottish county of the same name.
One of the better historical place name locators is from Dallan Quass, very good for alternative names, but it's far from complete.
Websites
There are at least of couple of websites that try to do the mapping from GEDCOM, such as Ancestral Atlas (commercial site) and an apparently abandoned project: Map Your Ancestors.
Programs
GeoGenealogy (somewhat out of date) has some links to mostly Windows programs (mostly commercial) that were supposed to map from genealogy files, but some may no longer exist or work on current machines.
There are also various abandoned undocumented projects like Genealogeo.
So the problem has been tackled many times, but I don't see a up-to-date easy to use answer. There's certainly still room for a better solution.