He doesnt hate the Starks, I belive he just said what he thinks his captors wanted to hear.
All these things with Theon was not even in the books, it is pretty much the first storyline they have completely invented from scratch. They are trying to make up for not showing the siege of Winterfell properly and not introducing an important character in season 2.
Well, I´m going by memory here, but Theon barely appeared in books 3 and 4, right? They probably thought, given the performance the actor playing him has given, that it would be better to expand on his story line and include some of it in season 3 already than to wait for three years to see what had actually happened to him.