Disclaimer: I work for MapQuest.
I can't speak to which geocoding services are more reliable and more accurate, simply because of the nature of geocoding; there are so many variables that can affect a result -- was the street name misspelled, was there extra "line 2" address information (i.e. "Apartment #5, 2nd Floor"), is the address correct and an official address (i.e., an officially recognized address by the United States Postal Service, Canada Post, etc.)? The same goes for reverse geocoding -- are you passing in coordinates that are close enough to a street for reverse geocoding to happen, or are the coordinates in the middle of a forest or within a body of water? I think it's going to be difficult to find a service that is absolutely perfect, but these are a few of the issues that can affect results. And, of course, there also sometimes can be data issues, where a street or an address is simply missing from the underlying base data.
Either way -- if you want to take a look again, MapQuest offers a Geocoding API (licensed/commercial data - daily transaction limit) and an Open Geocoding API (based on OpenStreetMap data - totally free to use, no limits), and the other APIs MapQuest offers can also meet the other requirements you listed.