How we handle this is we create a New Customer for the homeowner, Then you have to go back to the location that is listed under the contractor and edit that location. From the edit screen, you need to change the Customer Name filed to the Name of the homeowner (new customer created). This will then move the location over to the homeowners page. You should now have two locations listed for the homeowner. At that point, you can merge the locations in settings.
This will move the location and job history over to the homeowners account. However, a copy of the history will remain on the original customers page (in this case the contractor). And if you open any of the jobs or invoices after the merge, you will notice the Bill To remains as the original customer that was invoices, but the service location is now the new homeowner.
Its similar to this process listed under "When a customer moves in to a location you've worked at" here https://help.servicetitan.com/how-to/customer-relocation