First off, your beer is going to be fine. It will be a lower alcohol porter, but should still taste fine.
Second, here's what your mistakes actually did:
1) Maintaining mash temps is very important. Different temps activate different enzymes in the beer that extract starches differently from the grain. Anything under 150F or so, and the enzymes that are active break down the starches into mostly simple, short chain sugars that the yeast can easily consume. That means less malt character/lighter body, and a dryer beer. Anything above 150 or so, and the enzymes that are active break down the starches into both simple, short chain sugars that the yeast can consume and a % of complex, long chain sugars that the yeast can not. That leaves your beer with more malt character/heavier body from the residual malt sugars.
In your case, you started at 150F but pretty rapidly lost heat down to 120F. You would have had the enzymes active that will lead to a lighter body and more attenuation due to mostly simple sugars, however, because you lost so much heat, obviously your efficiency suffered.
Now, where you are. You can definitely add DME, but you want to limit it so it doesn't change the character of your porter. Take about a pound (assuming this is a 5 gallon batch), boil it on the stove long enough to dissolve it, then cool it to very close to your fermentation temp and add it.