1. Пакетные менеджеры тут ни при чём. В CMake называются "пакетами" сторонние сущности, находимые при конфигурировании проекта. Это могут быть библиотеки, программы и т.п. В общем, к понятию пакета в каком-то дистрибутиве Linux или vcpkg оно не привязано.
1) Пакетный менеджером пользоваться необязательно - достаточно установить бинарники библиотеки в одну из директорий, где CMake их сможет найти. Подробнее об этом написано в доках к find_package(). Один из таких путей указывается через CMAKE_PREFIX_PATH, например.
2) Нет, vcpkg обычно не нужно добавлять в проект, он должен быть предустановлен на машине разработчика. Включать целиком vcpkg в репозиторий нет смысла, т.к. каждый разработчик может ставить библиотеки в различных конфигурациях под разные платформы на своё усмотрение (debug, release, windows, windows-static, x64, x86 и т.п.).
3) Зависит от ОС. Под Windows vcpkg - лучший вариант по-моему. Под Linux и macOS есть apt (или его аналог) и homebrew, где уже есть большинство библиотек - там vcpkg не так актуален. Если не хочется париться с установкой зависимостей на каждом компьютере или нужна какая-то конкретная версия библиотеки, отсутствующая в репозитории пакетов, то можно её код просто включить в проект и скомпилировать её с тем же CMake-ом - либо как подпроект (subdirectory), либо как
external project.