From what I've read, those contracts are weighted in the production team's favour, so if they decide to get rid of a character they can. I think the three year contracts are really just to keep the actors in the show for three years (or as long as the producers want them) rather than to guarantee them a job for three years. So that might be what's happened to Tim.
I'm annoyed because Daniel was a good character (at least until they made him boring) and Tim's a decent actor. He shouldn't have to leave just because his onscreen partner wants to go. So many of the younger characters see Neighbours as a stepping stone to Hollywood and depart as soon as they can, so to get rid of a popular young actor who doesn't want to leave is nonsensical.