"A person who pretends to have...principles, that he or she does not actually possess, especially a person whose actions [contradict] stated beliefs. A person who pretends to have...principles, that he or she does not actually possess, especially a person whose actions [contradict] stated beliefs. " is:
a hypocrite.
Dictionary.com
Please note that this is a strong word.
Calling someone a hypocrite could carry strong connotations.
But it sounds like you want a strong word for this :D.
Meanwhile, some other words which also may or may not be strong depending on the situation and tone of voice are: a phony and a fake.
Also see the comments below if you only want to talk about a person who says one thing and then says the opposite the next day (as in your first example about hating and liking to talk on the phone).