There is more going on behind the scenes than you may realize. Not only do you see custom "launchers", but TouchWiz, Sense, and others may provide an entire API layer for apps that is required for some of the custom software provided by the handset makers. With that said, in the realm of computers, phones included, there is always the issue of how a hardware vendor can differentiate their devices from the competition. You have component selection, but then you have the competition for specs, and it isn't easy to do well JUST by making good equipment, since there will always be people who make a less expensive device that meets a spec but isn't as high quality. That means the "easy" solution is to put custom software on the device in question. Who makes the one that is easiest to use, or looks the best?
For regular desktop computers, you see the pre-loaded software, sometimes launcher bars that sit on the screen cluttering things up, or pop-up notifications that virtually no one wants or uses. That is an example of there being no imagination in how to make things better. For Android devices, you see some true effort to make devices that are DIFFERENT, but in a good way. TouchWiz may bother people who are Android purists, but for those who come from other platforms, it makes the transition a bit easier. Sense is the same way, trying to make things friendlier for those who are not Android purists. In both cases, there isn't a desire to make a pure Android device, but to make what the manufacturer feels is the best device for use by customers.
Google is working at this point on a way to make it so devices can get updates without having to wait on carrier approval, but this is a NEW effort. I suspect that what we will see eventually will be more isolation of the different components that go into Android, and that would allow for these pieces to be updated individually, without needing a full OS update. If you think about it, you have the "core" of Android, then you have all the included base apps(phone, Google Search, Google Now, etc....), then you have the layers on top, such as TouchWiz, Sense, etc, and the apps that are custom for those layers. Google could then update virtually all of Android except the core without carriers getting in the way. Hardware companies could release updates for their components, also isolated from being a full update, so would bypass carrier involvement when it comes to the updates. By making things more modular when it comes to updates, it may also free things up to turn off some of these vendor added components, but the vendors themselves might not want to do that.