Правильно: Средние века.
Правильно: среднее специальное.
Верно: средний рост мальчика (вообще); средний рост мальчиков (в группе мальчиков).
Строго говоря, этот термин некорректен. В российском законодательстве разделяются (и выделяются) среднее общее и среднее профессиональное образование.
Правильно: история Древнего мира, история Средних веков.
Корректно: среднешероховатый.
Правильно: история Древнего мира и Средних веков.