With 300 prefabs to go through, you may find it more useful to keep with 2.7.x. However, there is a fix to this, if you have a few things in Unity enabled:
Edit->Project Settings->Editor should let you choose 'Version Control: Meta' and 'Asset Serialization Mode: Force Text'
Having meta files generates gives you the flexibility to see the internally-generated GUIDs. UIButton.cs and UIImageButton.cs both create a .meta file, and if you look at their respective UIButton.cs.meta and UIImageButton.cs.meta files, they have a GUID in the YAML file. You can search through all of your .prefab and .unity files for the old GUID value for UIButton/UIImageButton, and replace them with the GUID of these new ones, and it will fix the 'broken' links.
This is certainly not ideal, but it might be faster to do a massive search-and-replace through all your files than to manually reattach everything.
Is there a reason you need to upgrade your project at this stage of development, though? Does 3.x do anything that you need which 2.7.x doesn't fulfill for you?