BUG: Dataframe.fillna with np.nan for dtype=category(GH 14021)
- [x] closes #14021
- [x] tests added / passed
- [x] passes `git diff upstream/master | flake8 --diff`
- [x] whatsnew entry

## [Current coverage](https://codecov.io/gh/pydata/pandas/pull/14051?src=pr) is 85.27% (diff: 0.00%)

> Merging [#14051](https://codecov.io/gh/pydata/pandas/pull/14051?src=pr) into [master](https://codecov.io/gh/pydata/pandas/branch/master?src=pr) will increase coverage by **<.01%**

``` diff
@@             master     #14051   diff @@
==========================================
  Files           139        139          
  Lines         50446      50448     +2   
  Methods           0          0          
  Messages          0          0          
  Branches          0          0          
==========================================
+ Hits          43018      43021     +3   
+ Misses         7428       7427     -1   
  Partials          0          0          
```

> Powered by [Codecov](https://codecov.io?src=pr). Last update [df2d9ab...a405777](https://codecov.io/gh/pydata/pandas/compare/df2d9ab917a1ef4732cfb6c3317432f60c071074...a40577751f0b42664d3f3d727d99f56e512214d8?src=pr)
 thanks!
