I think you need to be very careful about accepting any money, as if you do, you may create a tenancy. (You would need to take legal advice on this.)
So, if you intend to accept money, you should set it up formally, with a tenancy agreement. That way, nothing is implied; everything is explicitly agreed.
Is there some reason why she would feel entitled to live there rent free? Was the house inherited from a family member, or was it a family home that was purchased under "right to buy", for example?
The thing is, you appear to have tried to do the right thing by your sister, but she does not appear to have reciprocated. She doesn't seem to appreciate the favour you have done for them. This seems a very one-sided relationship, with you treating her specially, because she is family, but with her not acting the same way. I am sure that that is a difficult thing for you to have to come to terms with, but you need to. Many people rent within a family, and it works well, but I would suggest that for it to work, there would need to be some mutual sense of obligation and in this case, that doesn't appear to be true.