This plugin should resolve the issue but it also disables any other physic interactions.
Or you can script with the help of this forward from Left4DHooks.
To prevent any force to an entity, you need to SDKHook it and block the SDKHook_TakeDamage calls for a brief time (due to how punch checks for hits) (or you could just block it forever).