Actually you don’t need to be able to throw completely straight, barely is more than enough. It is common to control the yoyo tilt when doing tricks, because even if the throw is completely straight, if you don’t do your tricks properly it will start tilting anyway.
As for long sleeper, you can pinch the string near the yoyo and twist/untwist, this will change the yoyo tilting direction. This is an effect called “gyroscopic precession” where basically your spinning yoyo will move “after” 90 degrees of the induced force. So if your yoyo spins forward and you twist your string clockwise, the yoyo will not turn clockwise, but instead moves offset 90 degrees after the twist, which is tilting to the left… etc (best way to understand is to actually try this), it’s basically always 90 degrees after.
However, since you can’t use the twisting method while doing tricks, you can rub the string slightly when the yoyo is spinning, depending on where the string rubs the yoyo, it will change direction/tilt. Once you’ve been yoyoing for a while it will become second nature… Controlling the yoyo tilt while doing tricks is not as difficult as it seems… keep practicing and you’ll see what I’m talking about.