I have someone who appears to be repeatedly taking advantage of the 7-day free trial, cancelling, and then rejoining to get another week. Is there a way to block someone from joining (by name or e-mail address or...)?
Email address should already have to be unique, unless you are deleting the old one out of the database. Under "Setup/Configuration" then "Ban" in the admin panel, there are some of the options that would help, like banning by email or IP. If this is a real problem, you could also require manual approval of accounts.
Also make sure that your trial offer is available only from signup page so existing users can't purchase it.