How do I move a contribution from one contact to another?
This biz.lcdservices.movecontrib extension should do what you need but it has not been through the extension review process - use with caution.


  CiviCRM extension to support moving a contribution from one contact to
  another. This can be done through the contact's contribution tab or
  through a Find Contributions search result action.