Has anyone considered that the operating systems are different and if you swapped the chips over to handle each other's OS that things may be different? Just a thought. I don't know enough to know if this could be a factor.
The reason there's stagnation is because of the business model of the product:
1. Google makes the OS, but doesn't profit that much from each phone.
2. OEMs make the phones, but outside of Samsung don't make much for each phone.
3. Qualcomm makes the chips, but they profit from each chip and each license.
4. Broadcom and others make chips, but only profit from each chip.
Each of the parties involved just make profit from pushing massive quantities of product out the door, and have no reason to make a superior long lasting future-proof device since their profits end pretty much when the device enters the supply chain.
Android users tend to be much less invested in pay services, or buying apps so Google's main benefit from Android is simply selling advertisements. If its good enough for the buyer to see the ad, it's good enough.
OEM handset makers would *love* to sell their users a handset every year or two, but most Android users are not flagship buyers and most fall into the realm of feature phone-priced handsets buyers and have little brand loyalty. Outside of custom brand-specific software (which Google discourages), there's not a whole lot to differentiate on brand from another.
The chipset makers just want to push out the maximum number of chips, and have little interest in a product which the user will be satisfied using for many years - and the chipset makers are only interested in incremental improvements which will encourage users to buy a new product next year, when new software will make the old product seem slow. A powerful future-proofed design would be a disaster because you would sell less chips over a user's lifetime.
Apple, on the other hand, actually has a reason to have the most powerful processors they can make. Having multiple year's handsets means they can cover different price points by offering the same handset whose manufacturing start-up cost have been depreciated away can now offer older handsets to cover a lower price points, thought that handset will have to compete with new lower cost handsets from Android OEMs.