It seems unrealistic. If I'm an archer, I'm NOT going to fire my arrows at units on the other side of the battlefield if I'm gong to get cut down next turn.
OK, here's a much better argument.
Catapults, ranged and magic units can successfully attack my heroes, even though they are surrounded by my units. That means that I could easily create 'spoiler' stacks of units designed only to take down enemy heroes for multi-player. I won't win the battle, but I can be really annoying and not a lot of fun to play with. Or the AI can do the same thing purely by accident.
I feel that if units within an enemy zone of control can only attack adjacent units, that's going to make for more interesting battles, since there will be some maneuverability and a better reason to try to go past the front-line and attack the rear units. It also means that I won't have to simply sit there and watch my heroes get whittled down to nothing while being unable to do anything about it. I'm starting to care less and less about my heroes, especially the healing ones because they are so fragile.
My 2.