BUG: `DataFrame.shift` shows different behavior for `axis=1` when `freq` is specified
- [x] closes #47039 
- [x] [Tests added and passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#writing-tests) if fixing a bug or adding a new feature
- [x] All [code checks passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#pre-commit).
- [x] Added an entry in the latest `doc/source/whatsnew/vX.X.X.rst` file if fixing a bug or adding a new feature.

> LGTM, failure unrelated

merge conflict needed resolving. so shouldn't fail this time with main merged. > Needs approval from @jreback to merge.

green @meeseeksdev backport 1.4.x Could not push to auto-backport-of-pr-47051-on-1.4.x due to error, aborting.