You could use our Updates & Newsletters service to send a message to previous buyers of a given product:
Rather than creating a duplicate product with a discounted price, you could just send a purchase link for the original product with a discount code included in the link URL, as explained here:
You may want to run that link through a URL shortener like TinyURL.com, Bit.ly, Goo.gl, etc. to make the discount code less obvious and prevent line-wrapping from breaking the URL. If you use the Buy Now approach, the buyer would be taken directly to instant checkout, bypassing the cart, so that would make it even less apparent a discount code was being applied.
However, it would not be possible to prevent people from sharing that link (or the discount code, if they discover it) with others. The only way to limit discount codes to one use per buyer would be to set up a discount with a list of Discount Codes and Max. Use Count = 1, then issue each buyer their own, unique code from that list. We have no way to distribute a unique code to each recipient using our Updates & Newsletters feature, so you'd need to find a more sophisticated mailing-list service that could handle that (maybe Aweber or MailChimp?).