Can I give customers a free gift for a specific renewal?

Yes, of course.
To do this, just create a product swap where you add a product to the subscription after a specific renewal, set its price in the product swap to 0 and then, configure another swap to remove the same product from the subscription after the next renewal.