So, a while ago, I amused and frustrated myself. Ella is a very strong-willed character. She has been from the start. And a while ago, I realized that I really didn't like her. Not hate dislike her, but she bugged the crap out of me. Really, truly. There are about three chapters so far where I want to smack her upside the head for her stubbornness.
On the other hand, I recently made myself proud because I have a very interesting antagonist that you're not SUPPOSED to dislike until a very specific point. I finally wrote the scene where I give myself permission to think of him as an official scumbag from this point forward. Which only makes me like him more, because I really love a good villain.
So, in the first case, I was reminded of my feelings about Harry in Order of the Phoenix. For much of that book, I really wanted to call him a git and side against him because he was very irrational in a lot of situations. I think every character, realistically, has to pass through that phase or they're not worth reading. Odysseus is a git when he taunts the Cyclops. Bella's a git through a lot of New Moon for being a codependent idiot who needs to get a life. The Count of Monte Cristo is DEFINITELY a vengeful git. Heck, even Peter is a git in the New Testament for denying the Christ. But the point is, they come out as better figures of humanity for that.
So there's my theory. Every great character must pass through the valley of the shadow of git in order to be someone we can relate to.
As for liking villains, I'm just weird that way.