I would say give it another go conditionally if he:

1- If he admits his mistakes. This could be done by discussing what happened and expressing your concern of things happening again. Depending on what assurances you could feel, you may have a better ground for a better judegment whether take him or leave him.

2- If he does not hit you physically. Depending upon point number 1 above, the worst scenario could be lived with in case arguments happen again.

I don't recommend asking for the recovery program but no matter what program he undertakes, it is him who can decide!

Good luck!