You can do this with Word's Find and Replace. It has a unique form of regex but should do the job.

Find: ([\?\!,."]{1,})([0-9]{1,})
Replace: ( \2 )\3
Check Use wildcards
Hit Replace all

(record a macro if you want basic code)