The first thing you need to keep in mind is that the stronger the enemy is means more EXP and AP per battle and more Levels per hour on average since you waste more time finding enemies than beating them. Always to the hardest place your characters can handle. As soon as they level up, immediately go to a more difficult place.
Equiping the right Weapons + Armour + Rings
You can get almost four time faster with the right equipment. When you win a battle you will get EXP + AP + Gil. Exp is to level up the character and enhance all his abilities such as HP, Strength and so much more. AP is to improve your materia. As soon as they reach the amount of AP to level up you get more attacks with the same materia. And Finally Gil is to buy items, it's the Final Fantasy 7 money.
Always equip weapons and armour with double materia growth. This way you train your materia two times faster. A GOLD trick: Equip a lot of "ALL" materias, master them and sell them for 1.5 Million Gil!!
Equip Cloud and Cid with the Triple materia growth weapons. For Cloud it's the Apocalypse Sword found in the Canyon Forest and Cid is the Javelin found right before entering the submarine in the Junnon assault in the CD 2.
EXP Plus is a materia that doubles the amount of EXP you get after each battle. You can get some at the Gold Saucer battle square. Equip the max number possible of these!!
Finally you must equip the right materia to make the combat easier. I used to train automatically using the Fury Ring to make my characters go insane and attack automatically and the counter materia alone. This is enough to make all the training easy and fast. They attack automatically and they counter attack every time they are attacked.