BUG: fix Series.interpolate(method='index') with unsorted index
`Series.interpolate(method='index')` use [numpy.interp](https://docs.scipy.org/doc/numpy/reference/generated/numpy.interp.html) under the hood, which cannot work with unsorted X values. Here we sort the known data for `numpy.interp`.

- [x] closes #21037
- [x] tests added / passed
- [x] passes `black pandas`
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [x] whatsnew entry
