Apple, the poster boy for non-fragmentation, is consistently losing market share. They are now starting to realize that their only chance of continued growth depends on releasing more devices with different screen sizes and different price points. (Gasp -- more fragmentation).
It is up to Google to try to make programming across different devices as easy as possible. I am not sure how successful they are in this, I am not an android programmer. But fragmentation is not a choice or the result of a strategic error by Google. It is a fact of life when you are programming for hundreds of millions of users.
Think of it this way, if Google had chosen to go the Apple way and only used Android on their own Nexus devices, would there be more or less fragmentation? There would certainly be less fragmentation in Android, but there would be much more in mobile devices in general. Because Samsung, HTC, Sony and every other Android manufacturer would come up with their own wacky OS.