BUG: swapaxes creating result with read_only array
- [ ] closes #xxxx (Replace xxxx with the GitHub issue number)
- [ ] [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
- [ ] All [code checks passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#pre-commit).
- [ ] Added [type annotations](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#type-hints) to new arguments/methods/functions.
- [ ] Added an entry in the latest `doc/source/whatsnew/vX.X.X.rst` file if fixing a bug or adding a new feature.

And on another note, we should also just deprecate this method IMO: https://github.com/pandas-dev/pandas/issues/51946 I stumbled upon this in #51944.

Checked all usages afterwards, so should be good when all three of them are in ```
mypy.....................................................................Failed
- hook id: mypy
- duration: 201.84s
- exit code: 1

pandas/core/generic.py:753: error: Item "ExtensionArray" of "Union[ExtensionArray, ndarray[Any, Any]]" has no attribute "swapaxes"  [union-attr]
```