We had a similiar situation recently where we needed to correct project time, but the timesheets had already been frozen. We needed to reduce the number of actual hours reported on some of the tasks. It was a small number of timesheets that needed to be corrected.
Normally, we don't allow more than one timesheet per person per period. We set up a new timesheet policy to allow multiple timesheets per period and then we temporarily assigned this timesheet policy to the impacted resources.
Next, a second timesheet for the period was created and the resource entered negative amounts for the impacted tasks since we wanted to reduce what was reported. PPM allows negative time to do offsets for mis-reported time. Keep in mind that time entry for a project task can be negative as long as the task actuals do not go negative. Otherwise, you'll get an error. Example: If the user already has 20 hours of actuals on a task, they can add up to negative 20 hours.
The additional timesheets for the period were frozen. We changed the timesheet policy back to our standard one for the impacted resources.
We tried these steps in our dev/test environment before we did them in prod. We use the same version and service pack as you.