A few techniques are:
1. When he and you are in a good mood and can be alone, without any interruption from your daughter, sit down and say something like, " You know, we've got a problem here that we need to solve. Your sister seems to make you angry a lot and you hit her. Dad and I have punished you but it keeps happening and you know it's wrong to hurt her. So I thought you and I could talk about how to solve this problem and make everyone happier. I know it can be really hard to get along with a little sister sometimes and you probably hit her because she's bothering you, or you're in a bad mood, not because you want to hurt her. How about every time you're bothered or angry by something she says or does you can either go hit or squeeze this pillow or come to me and show me just how angry you are."
2. Again, alone with him away from his sister. "I've been thinking about how hard it must be sometimes to have a little sister who wants to use all your toys, be in your room, not leave you alone. I don't think we've ever talked about how hard all that must be for you. What are the hardest things about being around your sister? You know, she really doesn't want to bother you so much; she wants to be like you and do the things you do so she can feel more grown up like you. Will you tell me how I can help you with her so you don't do things to her that hurt her? Thanks honey, let's you and I celebrate things getting better and go have your favorite ice cream cone, just you and me.
3.Instead of always coddling her and punishing him, you could, in addition to having conversations like the ones above with your son, have conversations with your daughter using the same empathy based style. You could also role play with your son, you being your daughter annoying him, and praise him for his alternative behavior.
Good luck folks, I know you all can make things better for everyone.