Yes...believe me I have spent hours and hours trying to come up with a "automated" method and the only way I can do it is as I described:
product-A (now with no files included), and now never expires, is bundled with product-B (which has the required files and expires after 1 yr)
When product-B expires it sends a custom email letting them know etc and inside the email is a link to reorder product-B whenever they decide to re-up their membership. If they forget about the link in the email and they contact me I have the hidden order link already setup now as a predefined response that includes the link to re-purchase product-B.
I just wish that we could have a way to flag a "product" that requires that another "product" to already to be owned by the customer - it wouldn't be that hard to do but I think it should be a core feature and not a 3'rd party mod.
OR they need to add a "x-days expiration option" to the Addons like there is in the Products so Addons can simply expire.