Being that he's only 6 months, he just has lots of energy to burn.
It's going to take some training and patience, but it's worth it
What you can do is when he's left out of the crate don't try to pick him up or anything. Do it very quietly (maybe no talking to him or talk softly) and just let him out to go to the bathroom (if he needs to).
If he's being well behaved, give him a little treat. If you try to pet him and he starts trying to play rough, say something like 'ah ah' sharply and then walk away. To him play is fun and he wants to do it. So if he does something that stops the play, he'll pick up after a while that "If I do this, then play stops, so I won't do it". After about 20-30 seconds, you can try to to pet him again. Once again, if he gets bitey, say 'ah ah' and walk away. Keep repeating this each time he gets too bitey.
When puppies are playing and they bite too hard, the other pup will yelp and that's a signal that they are being too rough. It's the same when playing with people, so the 'ah ah' is like our yelp. If you want, do a yelp and pull your hand away quickly. Just make sure the yelp sounds like one, so it's enough to startle your pup so he knows something happened
Yorkie's are smart little things, he'll pick it up