As for upgrades, I don't think it would've been that hard to get the Open Handset Alliance to agree to keep things relatively compatible with each other, and let them handle the upgrades, and save them that cost. I just think Google didn't want to do that at the time, maybe because they thought it was too much work, and they didn't think Android would get that successful or something.
They could've set a clear set of standards, and they could've built a power theming engine to allow manufacturers to do some relative customization of the devices so they look different enough, if they really wanted to go that route, while still making it easy for them to upgrade them.