This has two aspects.
Quality of work
Whether or not you are happy with the housekeeper depends on the quality of work they provide. Since you want to keep her, I have to assume her quality of work is at least decent. In this case she provides what you have paid for, however she does so in less time.
As you, the employer, are then happy and the employee is also happy, there is no reason to change anything. Other answers have expanded on this and I won't further.
Relationship to employee
Oftentimes on this SE we do not only discuss salary negotiations or proper office email headers, but rather social dynamics occuring in the workplace. In fact, I'd like to argue that such dynamics are a major player in where issues arise from. This is true for this case as well.
While you can argue that your cleaner provides the work you are looking for, this behavior, at least from what you described, does seem deceitful. You yourself seem concerned enough to open a thread regarding the issue, so the damaged trust is a problem from your viewpoint.
Now considering these two sides of the situation, ask yourself a few questions before you decide:
- Is the quality of work provided in the shorter amount of time indeed satisfactory? Possibly quality of work suffers due to the cuts in hours, but you have other reasons for not willing to end the work relationship, some of which are in the bullet points below.
- Do you trust this person otherwise? It takes time to trust someone in your home, so this is a really compelling reason for keeping your cleaner.
- Is the hassle of finding a new cleaner the real reason for why you do not want to find a new cleaner, rather than trust and satisfactory work? If so, I think this is not a compelling one.
- Obviously, w.r.t. social dynamics, the relationship is indeed damaged. You decided to make an effort and post the question on the web, so it seems to be something on your mind. Try to weigh this aspect against the other ones, such as trust and quality of work. I could understand being this the sole reason for letting the cleaner go. I could also understand the relationship you developed over the years being worth enough, that this deceit does result in terminating it. This depends a lot on context.
So what would I personally do?
Well, you can tackle this situation like any other work environment. Imagine you have a sysadmin. They are familiar with you and with the work environment. You trust them in the work environment and know they can handle problems on your own. You also find out, they have been handing in false timesheets over long periods of time.
Should I replace this person? My work environment may not be hard to get into, but that doesn't mean there is no cost in teaching a new person or even multiple new people, if the next person does not meet my expectations. Maybe I overestimate the value this employee puts on the table, because a new person might be able to achieve the same after two weeks training. Maybe I vastly underestimate the value this employee puts on the table, because we have developed a level of trust and I know, even though hours were not put in fully, whenever there was an actual issue to solve, my employee dealt with it. All of these are things to consider.
At least I wanted to confront them. Not necessarily in an offensive manner, but I would want to know, why the cleaner decided to put the wrong times on their sheet. I will also say, that the discrepancies in time are much too large for my taste. Anyone has cut an hour at some point, in many workplaces this is even no exception and not even frowned upon. Yet agreeing to being paid by the hour, then putting in 1.5 hours out of 7 - that is pretty bad, this is at least my opinion.
Ultimately no one here can make the decision for you, but I hope these points give you something to consider when you evaluate the situation.