I had been dabbling with the idea of a geocoding service that is highly accurate based on open data, but gave up because data quality is all over the place even for countries with excellent open data access (France being the gold standard in my book). I found that to have accurate geocoding I had to have an ETL stack that pulled data from 2-5 sources per country, with country-specific code for basically every country, and that's just to store usable data. Even keeping it to the major economic powers felt too daunting, nobody wants a partial coverage geocoder and I don't want to be a one man data janitor gig, which is what the whole thing felt like. And still large swaths of countries are totally uncoded for all sorts of reasons.
A quick search shows some of the problems I found in my quest, and some new.
1. Wrong postal codes for certain addresses, e.g. Place de Gaulle, Antibes, shows 06160 but it's 06600. It's probably taken from cadastre or nearest OSM tags, but it's wrong, different parts of the town have either of the postal codes. For France, the postal code relations/polygons from OSM are accurate, just don't take postcode info from anywhere else, really, unless for some reason your point falls within France but somehow out of any postal code polygons.
2. Missing addresses. For France, I did some analysis on open data to find what street names were the most common, and found ~15k steets/squares/etc named "de l'Église", due to basically every town having at least a church and naming their street/square after them. Not sure if a problem with the data or with the parsing, but it only shows a few dozen.
3. While OpenAddresses is doing an amazing job, I only found the coordinate data to be accurate, and not always. Most of the fields in their own JSON are empty (postcode, district, region, and sometimes even city), but Gisgraphy takes them at face value, e.g. first result for Улица Деревянко is just that, it only shows street name. Also the coordinates are broken: 0.140642,34.6784995 falls either in Kenya or Algeria (coordinate swap is also rampant in many sources, which is a another topic). That is the official data from Kharkiv, Ukraine, which probably geocodes the locations in a different system than WSG84 for, you know, reasons. OA tends to focus on easy to process data, and can't blame them, since the state of the whole geocoding world is an absolute clusterfuck.
4. Related to 3, OpenAddresses only has (had?) two towns from all of Ukraine (Kharkiv and Dnipro) with really terrible data. But OSM data is also fed to their model, so data overlaps, sometimes with different scripts, or languages. So the street above, "Улица Деревянко", which is in Russian btw, appears again as "Дерев’янка вулиця" which is Ukrainian. The whole l10n/i18n part of geocoding is another tough problem to solve, because letters written to Derevyanka Vulitsa will arrive as well, transliteration data is spotty at best, but for many languages it can be transliterated through software, again, depending on many factors.
That said, I'd love to work on a project like this as part of a team.