If the user only modifed his/her page, there will be a row corresponding to the change in the PagePersonalization table.
1st, I'd backup the DB (in case Things Go Wrong). Then I'd remove the row from this table that corresponds to the affected user (UserID) and the webpart page (PageID)
With this row gone, it should load the "core" webpart page for the user again.