Сочетания нельзя переоценить, трудно переоценить верны. Переоценить – оценить слишком высоко, выше чем следует. Смысл такой: вклад Гете в развитие немецкой поэзии настолько велик, что даже самая высокая его оценка будет правильной, нельзя будет сказать, что этот вклад оценили выше, чем следовало бы.
Правильно: ежовые иголки, лосиные рога.
Оба варианта корректны.