1)Заголовочные файлы: в них собраны прототипы функций библиотек?(и все?)
Содержимое заголовочного файла просто подставляется в то место где написано #include. Поэтому туда можно поместить всё что угодно. Традиционно библиотеки помещают туда объявления классов, функций и глобальных переменных и определения макросов.
2)Как компилятор находит нужные встроенные функции по прототипам если мы не включаем в cpp файл библиотеки а лишь подключаем заголовочный файл с помощью #include?
Компилятор их не находит. Не его это работа. Он просто помещает в объектный код вызовы ссылающиеся на внешние символы. Во время линковки объектных файлов в исполняемый файл линковщик находит все вызванные функции в библиотеках которые ему передали для линковки.
3)Я так понимаю прототипы в C++ нужны для того чтобы компилилось быстрее?
Прототипы нужны чтобы компилировалось вообще. Нельзя вызвать функцию о которой неизвестно вообще ничего.
4)Заголовочные файлы представляют из себя уже откомпиленый код?(объектный)
Нет, это обыкновенные текстовые файлы с исходным кодом. Содержимое заголовочного файла просто подставляется в то место где написано #include. Открой один для интереса и почитай.
5)Тот же вопрос что и в 4 только уже про библиотеки
Да. Статическая библиотека -- это архив объектных файлов. Динамическая библиотека -- это собранные линковщиком вместе объектные файлы.