MAINT: Fix broadcasting of arrays
Prevent empty object arrays from being broadcast

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

Probably not the right fix for the future empty array assignment issue, but seems to work. @bashtage if this closes #35481, I think tests should be failing (with XPASS), see #35502 I thought it worked prior to rebase...I'll need to see what happens. Definitely not a fix.
