Honestly, it sounds to me that you're largely doing the right things already. Getting him out of the situation (Time outs), re-engaging his empathy for his cousin (hugging afterwards), and giving him alternate ways to express his frustration (hitting the pillow) are exactly the same three steps we do with our (very aggressive) four year old - not quite the same way, but the same principles are there, and I think that's the key.
A three year old is never going to be able to control his every reaction, and that's okay. He won't be perfect, and it's not reasonable for you to expect that. Not that you shouldn't make every effort to change the behavior - I'm just saying, don't feel that you have a "Bad kid" because he loses control occasionally. I've yet to meet a three year old that doesn't occasionally hit other children, and if yours is bigger than others, well, it's going to happen a bit more. Work with him to develop his empathy, to develop other alternatives, and he'll get there. Do try to be consistent - don't change from one attempt to a different every time - as things will take time to sink in.
As far as the eight year old, it sounds like you need to talk with her parents further. Non-confrontational discussion of behavior is perfectly possible; it's very important to phrase things in a positive light (how you can help improve things, for example).
It also sounds like your three year old may need some tools to help deal with the eight year old. When you see issues like you describe above, right then, talk to him about what happened. Give him suggestions for how to deal with it - whether it is using his words to express his frustration, letting her know she should say excuse me, or getting help from adults when it's necessary to avoid physical conflict.
That's also a great way to work on the empathy on his side - at least with my four year old, it's very helpful for him to see examples of when other kids push him around to understand how it feels for other kids when he pushes them around. I see remarked improvements (at least in the short term) in his behavior when he's had an issue with an older kid pushing him or not being nice to him, and we talk about it.