This is an interesting problem. The easiest way to solve it is to create yet another feature value, let's call it "max_version". When a license expires, you can set "max_version" to the current version of your application. Then, in your app, check the "max_version" feature.
If the max_version is greater than or equal to the copy of the app the user has installed then let the user run your app. If they downloaded a newer version of your app, then tell them to use the older version of your app or renew their update license.
Does that make sense?