This is pretty simple to fix actually. The reason you feel tilted forward and then fall is because your weight is pitched forward on the horse's front end, and then gravity just does it's thing. So the big thing to remember is to SIT BACK. DON'T grip with your legs. You need to develop an independent seat, and griping is a no-no when developing one.
It might be easier for you to go into the canter from a sitting trot, IF the horse does not do a really fast trot before going into the canter.
So, in order for a horse to canter, his weight must shift to his hind quarters, causing the front end to become light. You want to have a rocking horse effect in the horse's body. So it would make sense that as a rider, we need to do in our body what we want our horse to be able to do in his body. We can't just sit up there in a static position and expect the horse to be able to move correctly and efficiantly.
So picture what a horse looks like when they canter. Then do that in your own body. Sit BACK on your butt (that's why God gave us butts lol) and start to "canter" in your body. Say you want the left lead. Do little leaps in your body and lead with your left arm, mirroring the horse's left front leg. Do what you want your horse to do. You can also sit on your thumb (outside hand) while keeping the reins in your inside hand. This will keep your weight back and release tension in your back, especially in your lower back.
When the horse goes into the canter KEEP YOUR BUTT ON YOUR THUMB!
Imagine your legs being loose and flowing. Canter for a few strides then ask for a trot or walk.