Yes, the vet will do it, best time is when they are sedated, take advantage when you are having their teeth floated, and ask vet to clean him. I have three geldings, I just recently started cleaning my own.
After months of practicing getting close, everytime I groom, I run my hand around him in that area. I first started putting my hand in the "pocket" and just cleaning the wall of the pocket. I use medical gloves as to not scratch them, plus the smell will stay with you awhile. Use aloe vera gel (the stuff you use for sunburn relief), put it on your hand rub in the pocket, let sit a few minutes, this will loosen the gunk, then just scrap it out, it also gives them confront and coolness. After months of that, I finally got them to allow me to pull them out, then you run your finger around the tip, in the canal, and that is where the "beans" are. Beans are little balls of dirt and smegma. They can cause irritation and infection, if left in too long.
One of my horses, will drop if I rub him on the base of his tail. It is a bonding experience for sure, but after awhile they will trust you, and that is a big accomplishment. Also, while bathing, I rub the sponge in the pocket, and rinse with the hose.
I usually do this a few times a year.
Good luck. It's just a matter of earning their trust.