Try putting him up on something when you are brushing him rather than doing it on your lap. You will find he behaves much better. A grooming table is ideal (I couldn't live without mine), but you can accomplish the same thing by putting a folded towel on your washing machine.
 
If his coat is hard to comb through and you are tugging at it, no wonder he doesn't like it. You can't brush a coat like you would brush your own hair. You have to get underneath it by flipping the top layer back and working in small sections. Use a good grooming spray like Ice on Ice and a good pin brush with no balls on the tips. (They can snag the hair) You also want a brush with a soft pad so the brush has "give" since Yorkies have no undercoat. Chris Christensen makes good, but pricey brushes. My new favorite brush is the Madan pin brush. It's the best I've ever used and I've tried them all. 
 
  
After you brush him, go through his coat with a comb to make sure you get all the mats out. 
Be sure to praise him for being a good boy and keep the grooming sessions short until he is better about them. You don't want them to be something you both dread.