If the property is let under a short term tenancy agreement, such agreements are typically for 6 months then extended by mutual consent. If either party wishes to terminate the agreement after the minimum period then either party may do so, giving notice. This is probably what the landlord has decided to do - he does not have to give a reason.
You will have to explain why she (and not the landlord) has paid money for 'work done on the house' before anyone on here can comment further to that, but she cannot normally withhold the rent without being in breach of the contract.