It sounds like you would benefit from reading up on water chemistry and how it affects not only the mash but also the final flavour of the beer. The mash has certain requirements in order to work as we want but mostly these come down to ~50 ppm calcium (but that is not hard and fast) and proper pH. Mash temp can affect how a beer tastes because of how well the wort will attenuate.
You mention poor hop expressions and it is possible that poor attenuation is part of this but also water chemistry. A little extra sulfate can really bring out the dry character of a beer and make the hops pop a lot more. you can experiement with some beer you have already brewed by disolving a teaspoon of gypsum in an ounce of boiled water and adding drops to your glass. it will dissolve easily and you can learn a lot about what this does to the flavor of your beer without making batch after batch.
caramel flavor could well be diacetyl and if you are removing your beer from the yeast too soon this could well be the problem. you can also choose different yeast that are less prone to diacetyl.
Head retention problems and high ferm temps go together all the time. the higher molecular weight alcohols produced at higher temps act just like oil and will prevent head formation and degrade retention badly.
so there you go. try getting that pitch temp down, keeping the ferm temp down and pitching plenty of clean neutral yeast (try us-05 for a while just to take that out of the equation. 1 packet is great for 5 gallons of beer up to ~1.050 just sprinkled on top, re-hydrate in warm water if you wish)
keep the recipe simple, 10 lbs base malt (North American 2 row is great), 1 lb medium crystal (40-60l) and enough hops at First Wort hop (added to the kettle before you run wort off the mash) to get you your desired IBU with a big dose (2-4 ounces) at flamout for aroma.