There is a plugin built by Louis to do that:
https://wordpress.org/plugins/elegant-custom-fonts/
Although it hasn't been updated for a while, it works great. To do this, you have to follow the steps described step by step.
Recently a snippet was made available to the community by a frequent contributor, Matthias.
Its use is extremely simple. You have to install the code snippets plugin, import the snippet downloaded from Matthias' site and activate it, put in the /uploads/fonts folder (to be created if necessary) the files of the desired fonts in any format. And that's all.
There is also a premium plugin that has optimized UI, upload option from Media library, font swap, and preload.
https://dplugins.com/docs/swiss-knife-start/font-manager/