My non-bengal cat, Pixie, sometimes likes to "wash" my hair when she's sitting behind me on the couch or when we're laying in bed. That's not so bad because she mostly just licks and chews at the hair. However, Pixie also likes to gives "love bites" when she's being affectionate, so she used to often bite my scalp while she was at it.
It seems like in your case Milo has just found a creative and not so positive way of getting your attention. In my experience, cats can sometimes have a need for attention that rivals their desire for food, and sometimes negative attention can be better than no attention for them.
If you really want Milo to stop pulling your hair, my advice would be to make a pained sound when he starts (you've probably already got that part covered
), and then just get up and leave the room, completely ignoring the cat.
Producing the exact opposite of the intended reaction should provide an efficacious disincentive. That's how I got Pixie to stop biting my head.
Come back in 10-15 minutes and give him lots of affection to let him know that there's no hard feelings and that you still love him. Make sure that you reward, or at least acknowledge, more desirable cries for attention in order to prevent more "creative" attempts.
But then, I could also be way off base here, YMMV...