Geocoder caches geocoding results from an address. Sometimes that means it will cache an empty result that can occur from an error (ex API). Even after you fix the error, the address will not geocode correctly until you clear the cache using the following function.
cache_clear_all('*', 'cache_geocoder', TRUE);