You will not be able to use traditional rainbow tables, with for example Cain & Abel, for cracking WPA passwords. The reason is that the ESSID (name) of the wireless network is used as a salt when the WPA passphrase is hashed. This means that unless the rainbow table was computed specifically with WPA passwords in mind, and more exactly against exactly the same ESSID as your target AP uses the table will be of no use to you.
This is why airolib-ng also requires you to specify the ESSID for which the lookup table is to be compiled. You also mention that you tried out airolib-ng for yourself, but surely you did not use a 40Gb large wordlist as computing this would take virtually forever.
To sum it up, there really is no shortcut to obtaining the passphrase of a WPA encrypted network if the password used is long and secure. The most viable option in this case is a client side attack, which involves different techniques for getting the password directly from a computer that is used to connect to the network.