The problem with a flat fee is the incremental small updates. Construct isn't going to be "Construct 3" or "Construct 4" every year like Photoshop or similar. There needs to be a "subscription" of some sort. The problem with the proposed model is the limitations on publishing rights if I choose to stop upgrading. This would be like Adobe disabling my Photoshop CS2 because it's old. That sucks and wouldn't ever by any program like this, especially an indie one.
Make Construct 2 a one time purchase and charge for the incremental upgrades. I buy Construct once, I pay for upgrade periods. Something like this feels most logical and most enticing, while not making things complicated. For example:
Store Products:
1. Construct 2 + 2 years free Incremental Upgrades: $4X
---Includes the most recent edition of Construct 2, the ability to export to A, B, C systems, and free regular upgrades to Construct 2/exporters for the duration of two years.
2. +2 years Incremental Upgrades: $2X
---Add two additional years of Construct 2 upgrades to ensure uninterrupted updates of the newest Construct 2 features
3. Additional First-Party Exporters: $1X
---Broaden your user base by exporting to more systems.
4. Commercial License: $15X
---Ready to mass market your game? Buy the Construct 2 commercial license when your game sales are $2,000X or more.
Future Store Products:
1. Construct 2 to 3 Upgrade: $2X
---Ready to take your game making experience to the next level? Already own Construct 2? Save 50% on Construct 3 by upgrading. The remainder of your free incremental upgrades period on Construct 2 will be transferred and you will receive addition year of incremental Upgrades for Construct 3 free
2. Additional First-Party Exporter Upgrade:
---Already own several Construct 2 exporters? Upgrade them to their Construct 3 versions and receive a 50% discount.
If you imagine X being ~$10, this would seem very reasonable to me, while still allowing the dev's to profit. Publishing rights would always be available, even after Incremental Upgrade periods were finished. People could make unofficial exporters still, while dev's could make a little money on first -party exporters if they wished.