Revenue recognition is orthogonal to this post. The main point is that if you're selling things for money you should model those things separately from how money is used to acquire them.
Case 1 (which the article suggests we shouldn't do): Bob tries to download his contacts, we check our database and find that he's subscribed at the gold payment tier and thus is allowed to do so, and so we provide a download option.
Case 2 (proposed alternative): Bob tries to download his contacts, we check our database and find he has that privilege for the next 6 months (which we recorded previously when he subscribed at the gold tier), and so we provide that download option.
The 2nd case is probably a bit worse if you never change your payment options, but it makes changing them trivial and doesn't introduce much burden.