This is a tough issue that I'm not sure anyone has really solved yet, but here are my thoughts for your 3 solutions

Phone number
Yes this might be a bit personal or creepy but I feel like it's becoming less so since people are actually using their phones less and less.  You'll want to be clear that you're not selling their phone number to a marketing agency or they won't be receiving any solicitations.  Also for this to be effective, you will have to verify that this is in fact their phone number meaning a text message confirm or something to that effect to prevent people from putting in some random phone numbers they don't own.

IP Address
The cons for this are pretty big issues so I wouldn't recommend this.  What I might recommend for this is to use the IP address + private email domains to alert you to suspicions of a multiple accounts in which you can investigate.  Obviously working with the threshold of this would be useful.  

Credit Card number
CC number is complicated... you generally do NOT want to be storing CC numbers since it creates a huge liability for the company.  As such you normally use some sort of service which provides a token, and suddenly thing become very complicated.  Unless you need to set this up anyways for payment of your service, this can be a lot of work.  That being said, CC is not a bad idea if you really want to only have people who are a bit more committed to your product to actually go and give it a try.  Also to increase comfort levels, you can potentially not ask the for their CCV (i'm not sure if this will screw up validating the authenticity of the numbers).  

I honestly don't feel that having just email will cause absurd amount of freeloaders to continuously  use trials.  Also someone who's doing that will most likely never buy your service anyways (or is not the kind of customer you want) however without knowing what your service is exactly it's hard to say.  Out of the 3 you have here I probably recommend phone number.