WireGuard itself is the perfect example: ChaCha20-Poly1305 is relatively simple to implement without screwing up. Curve25519 fits as well. Blake2s is fast even with only 32-bit integers.
A good AES implementation without any subtle vulnerabilities is hard. They left plenty of footguns on the table for you. DJB has plenty of criticisms of secp256r1 and similar curves, which is why Ed25519 and Curve25519 exist in the first place.
The algorithms might be fine, but the difficulty and complexity increases the odds that something will go wrong. Even your trusted implementation might have a bug or get one later, and there's more places for those to hide.
The intent of this control is absolutely not to require a whitelist of individual websites.
This control is meant to apply to ports and protocols aka tighten up and document your firewall rules
If you are referring to SI.L2-3.14.7, you also do not need to whitelist websites. A pDNS service helps here but is not required. There are free options available, one of which is offered to small businesses in the DIB through the NSA's CCC program. This also gets you vulnerability scanning and some other stuff, all free.
Let me know if you have any questions. CMMC isnt a cakewalk but it needs to be done right if you don't want to fail your $40k C3PAO assessment :)
I am unfortunately now ignorant in this area. Without going into detail I was partly involved with IT but no longer after a restructuring and "staff reduction." IT duties were fully transferred to the CMMC vendor. The vendor is either ignorant or lying as they may be a reseller or getting kick backs for the white list. Frustrating but I am now powerless.