Правильно: надеть на него шляпу.
Одеть и надеть — это паронимы, то есть есть слова, похожие по звучанию, но различающиеся по смыслу. Именно из-за похожести некоторые путаются в их употреблении.
Надеть можно что-то на кого-то или на что-то — например, надеть платье на куклу или перчатку на руку. Одеть можно только кого-то — например, одеть ребенка. Иногда глагол употребляют в переносном значении — например, зима одела поля снегом.
Вопрос об обособлении слов откуда не ждали спорный, поскольку это сочетание можно считать и неполным придаточным предложением, и (в составе сочетания прийти откуда не ждали) – цельным по смыслу выражением. Последнее, на наш взгляд, более вероятно, т. к. слова откуда не ждали эквивалентны члену предложения – обстоятельству (ср.: неожиданно, откуда ни возьмись). Следовательно, запятая здесь не требуется, хотя по воле автора текста она может быть поставлена. Разнобой в ответах устранен.
Дополнительные запятые не нужны.
Названия улиц женского рода в сочетании с родовым наименованием улица обычно склоняются: на улице Большой Покровской. Ср.: на улице Зацепский Вал (название мужского рода в сочетании со словом улица не склоняется).
Корректно: высота Мюллера.
Запятая нужна. Подробнее см. в "Справочнике по пунктуации".
Верно с двумя н.
Неясно, относятся ли слова в центре романа к обеим частям сложного предложения, поэтому ответить, нужно ли ставить запятую, невозможно.
Корректно с прописной: Студенческий театр МГУ.
Корректно: «Большая двадцатка».