REGR: fix DataFrame reduction with EA columns and numeric_only=True
Closes #33256

For the block-wise path in `DataFrame._reduce`, we ensure to use the EA reduction for blocks holding EAs, instead of passing the EA to the `op` function (which is typically the `nanops` nan function).

This needs https://github.com/pandas-dev/pandas/pull/33758 to be merged, since that PR fixes the test that is failing here.
> is _reduce part of the interface?

yes (and the default is to raise an error saying the reduction is not supported)

> if we're avoiding nanops, can/should we make those functions either a) not handle EA cases or b) dispatch to _reduce?

Since `_reduce` is the interface that Series calls, and thus IMO also DataFrame should call for EA columsn (which I am doing here for the block wise path, and trying to do in general in #32867 (also for `numeric_only=None`), then in principle, I think we can/should always call that for EAs, and should not need to call a nanops function for an EA. Which means that in principle nanops would not need to handle EAs.

Of course, we could also decide on always calling nanops, and putting the logic to call `_reduce` for EAs in nanops. That's a choice we can make. 
(but in either way, I think the core algorithmic code of nanops should not need to handle EAs, as the `EA._reduce` can pass the correct ndarray to nanops and reinterpret the result)
 More comments on this? (apart from that I need to rebase + fix the tests (update error message match)) seems ok to me ill take another look once rebased+green, but tentatively looks good Updated on master (travis failure is an unrelated URLError connection error in test_read_from_http_url) LGTM xref #33300 to track.