Drupal paid subscription manager where nodes are removed upon expiration
You want Commerce License, a framework built exactly for that. You can write a custom license type that creates / deletes the node when the license status changes (and it would be a good candidate for a generic contrib).

The recurring side is handled by Commerce License Billing.

EDIT: There is now a Commerce License Node project too, doing what I described.