The ISA is quite messy because of the backward compatibility requirement with the Intel 8080 (e.g. the Z80 had to fill undocumented gaps in the 8080 opcode encoding map with new instructions, four of which were prefix instructions to unlock additional instruction 'subsets' (DD/FD for replacing instructions involving the HL register pair with indexed addressing modes via the IX/IY registers, and ED/CB prefixes for adding two entirely new opcode blocks).
If the Zilog engineers would have been free to design their own ISA I'm sure they would have been able to come up with a much more elegant design.
Also the Z80 had more than twice as many transistors as the 6502 (8500 for the Z80 vs 3500 for 6502).
I still prefer programming the Z80 over the 6502 though :)