In both cases, it's not actually creating a typeclass instance. However, because (<=) from Ord is declared in GHC.Classes, you're able to create a new (but completely unrelated) function named (<=). The fully qualified names for these would be GHC.Classes.<= and YourModule.<=, so they don't clash (but if you tried to use <= without qualifying it, you'd get an ambiguous reference error).
In the case of Rev, you get an error, though, because both the class method and the standalone function are declared in YourModule, which is illegal (multiple declarations of the same name).
So, long story short, go with the "instance" syntax.