fetch: clear partial downloads when --force is given

Fixes #23764.
fetch: check for existing cache file before downloading