To gain control of your service toss, there are a few minor, yet key, things you can do.
Start with the ball loose in your hand and start the toss hand inside your non-dominant leg
Begin racket prep first, to minimize extra movement.
Make sure to keep the toss motion smooth and slow. Rushing the motion can cause lack of control.
Keeping the toss arm almost straight helps reach the toss higher and good distance from you.
"Release" the toss well above your head. Many players tend to "throw" the ball in the air and leave their toss arm too low. The less time the ball spends in the air, the less error there should be.
When you drop your toss arm, be sure to keep it in front and still high. "Covering your heart" is a good guideline.