Okay, so I ride a "lazy" horse. I can't get him to canter more than 2 seconds or so, but very rarely he canters longer than that. My instructor told me to keep him going with my seat, but I tend to bounce around. Help?
It honestly sounds like you just need more experience and more lessons. I know that my horse will NOT canter unless you A) ask him correctly, and B) have a deep and quiet seat. And he is definitely not lazy, in fact, he's a heck of a lot of horse, he just will not go unless you are aware of yourself, how you're asking and what your body is doing. Until you learn to sit quietly I don't really know if I have any other advice. Maybe ask your trainer for a lunge line lesson where you can focus on your seat at all gaits, walk, posting trot, sitting trot, canter, etc.
I would use a crop and every time he bucks turn him in a circle and put your leg or spur in him. The thing is that he can't buck going in a circle. And repeat this every time he does this. He WILL learn that bucking is not ok and that if he does he will get smacked with a crop and he will get your leg put in him. It will make you and him feel uncomfortable foe a while but all in time will things work out! And I agree with Gillian, you should ask for a lounge line lesson and work on your gait and ballance.