The Core Database holds all of the SPEAK UI items (and much more) needed to display various dialogue boxes.
If a Blank Core DB works, then put that DB back on and Package up the
/sitecore/client/Applications node and deploy that on the previous database doing a overwrite. (Obviously back up your old core first in case you screw something up.)
This Item and child items contain the content items needed to display the various applications that the Sitecore UI itself uses to display. It is plausible that the issue resides here. That is why I suggest packaging this folder.
Business Component Library
This is the commonly used set of SPEAK Renderings and Layouts. Items in the Applications depend on the Business Component Library items. If packaging the Applications up doesn't fix the issue, you might try packaging up Business Component Library items instead.
Services and Speak
These two items contain more specific items that the Business Component Library and Applications depend on. Based on this error, I don't expect the issue to lie in these sections.
Why would this work?
Due to your comment saying that the vanilla 8.2U2 core database works, I believe that the issue is the migration didn't properly copy over the proper elements needee in the Core database.
Therefore, packaging up the SPEAK UI items out of the vanilla Core DB and installing the package on your old Core DB using the Overwrite feature, will bring the appropriate items over that seem to be missing.
Why package up all things?
Well, I take the line of thought that if one obscure item is out of whack, there might be others. So to be safe, copy over all of the SPEAK UI client Application items.