Two practical suggestions in addition to other relevant answer:
1.
I want to go to the program head or a higher up at the university. But I don't want to persecute my professor.
Ok, so don't persecute: Talk to the program head informally - and tell him/her that at this point you do not wish for any formal action to be taken. Perhaps even have him/her guarantee you confidence before you tell him the details. caveat: @JonCuster saysinforms us in a comment, that in some states in the world (e.g. in the USA) the program head would be legally obligated to report the case. If that's true where you live, then it's not clear what s/he would actually do. But see my next suggestion...
- Consider consulting your your student union first - especially if you have department-level or cohort-level representation whom you know personally. It may help if they told your Professor to stop behaving the way he does. Again, you can do this informally; and the student union is not legally required to report.