Fix fillna accepting downcast as dict
- [x] closes #40809
- [x] tests added / passed
- [x] Ensure all linting tests pass, see [here](https://pandas.pydata.org/pandas-docs/dev/development/contributing.html#code-standards) for how to run them
- [x] whatsnew entry

This fix makes sense in this case I think, but this does not fix the case for non-list like values, which raises a NotImplementedError

The docstring for Series.fillna says, that downcast may be a dict too, but I don't think that this makes sense, so we should maybe raise an error there?