Levitate will keep it up.
I used PS! to simulate this, and in this case, Levitate made it so Earth Power did not hit. So Levitate overrules Roost.
And according to this thread, Gravity will bring down both Flying types and Pokemon with Levitate. So if Gravity was present, then it would count as falling/being brought to the ground, and Ground type moves would hit.