Защитить шрифт, используемый на сайте, и запретить его скачивание пользователем полностью невозможно, так как браузеры требуют загрузки шрифта на сторону пользователя для его отображения. Можно только усложнить процесс получения шрифта.
Можно конечно придумать какой-то костыль тип - шрифты хранятся на сервере в зашифрованном виде, при заходе пользователя на сайт сервер отправляет шифрованные файлы, которые расшифровываются на стороне клиента с помощью JavaScript, используя динамически генерируемый ключ, уникальный для каждого сеанса. Но такие методы не дают абсолютной защиты, а только делают процесс получения шрифтов более трудоемким для злоумышленников.
Оптимальным способом остается юридическое ограничение. Лицензия на использование. И в случае нарушения можно применить правовые меры. Знаю несколько случаев когда отсудили в России большие деньги за это дело.
ps можно также "обрезать" шрифт, удалив неиспользуемые символы, чтобы злоумышленник не мог полноценно его использовать. Такой подход часто применяют платформы по продаже шрифтов. Важно лишь, чтобы это не повлияло на корректное отображение вашего сайта.