They mean essentially the same thing. Differences may be:
To do someone harm. To act in a way that results in physical, emotional, financial, social, etc. harm. It can have the sense of harm at a distance. One can act 'behind the scenes' to cause harm to another.
To hurt someone. This generally has the sense of a more direct action which hurts someone. I think the hurt/harm in this case is considered to be more limited: physical or emotional damage.
I hope this is helpful,
- For Teachers