This sort of behaviour simply doesn't fly in 2019! It is technically assault, definitely harassment and totally inappropriate.
Rather than waiting for next time to deal with it, could you call him aside next time he's in the office and have a stand-up meeting (this doesn't let him get comfortable and lets you control the distance between you as well as shortening the time. Be sure to position yourself so he can't corner you.)
Then you calmly, clearly and unapologetically state that he has overstepped the mark by putting his hands on you without your consent, coming up from behind without warning so you are suddenly trapped between chair and desk with nowhere to go and continuing to impose unwanted touching.
If he starts to splutter excuses or justifications or responds in joking disbelief, just raise a palm towards him and tell him this is not a conversation, it's an objection and he just needs to listen.
Make clear what you want: the touching must stop, his behaviour towards you must be appropriate for the workplace.
Make a note of what you want to say beforehand and note what he says afterwards, dating and keeping both notes as evidence.
If he apologises and undertakes not to repeat the behaviour, end the meeting quickly and resume work. If he tries to argue and bring things up against you, announce you are ending the conversation and walk away. In the case that he fails to apologise and undertake to behave respectfully, you then need to put in a formal complaint to HR.
If he's doing this to you, it won't be the first time and you won't be the only one. Consider the possibility that he is already known to HR and could already be on a final warning for this!
Likewise, if he apologises and undertakes to behave respectfully but later makes a show of tiptoeing around you with sarcastic comments about not daring to brush up against you, go straight to HR with your complaint.
Anything that takes your mind of your work and makes you feel embarrassed or uncomfortable is out of order.
As I see it, he could respond three ways: genuinely apologetic and remorseful; defensive and angry and inclined to justify or minimise; eye-rolling blokey-jokey fake disbelief with suggestions of over-reaction on your part and harmlessness on his. Anything but the first suggests you need to complain officially.
There's a remote possibility that he might deny ever touching you at all, but if you work in a shared office he will know there are witnesses!
Bottom line: don't wait until he does it again because you are then in an uncomfortable position. Be proactive and put him on the spot unexpectedly for a change!
Is your DH likely to take his side or sack him on the spot? I'm wondering why you haven't already told him, tbh