Honestly, as someone who has a best friend that's a die hard apple lover, I have no complaints with Android as an OS. The faults I see are more on the carriers and handset creators than the system itself. Android in it's pure form, unfettered by carrier/manufacturer bloat, and carrier/manufacturer denial of upgrades is a wonderful thing. I have the Nexus 6 and got it initially because I was a huge fan of Motorola, now I keep it because I love having 100% control over my fate. Add to that that I am on Project fi and I have no one between me and the mother ship and it's wonderful. I'll be upgrading someday when they come out with a Nexus I like, but until then I am up to date with the latest and greatest and my phone continues to hum along.
So, if I had a magic wand and wanted to make Android "better", I'd make all manufacturers push out stock android handsets, dictate they make their propitiatory software in app store format that can be added or not as the user chooses, and that were not a part of the OS so that updates would go out to all phones at the same time from Google. I would also dictate the same to the carriers, no bloat, only app store add ons should the user choose to do so and no ability to stop updates.
That way only the hardware capability itself would stop updates to the end user. (When a phone could no longer support a certain upgrade.) That would stop the fragmentation problem which as I see it is the only "flaw" in Googles model.