Cobalion is not viable in ubers, as its offensive STAB combo is outclassed by Terrakion who also sports much higher attack and equally as good typing to take on E-killer. I don't understand how it can work at all since 90 base attack isn't good even in UU where it belongs.
On offensive teams I'd use Giratina-O, maybe Fightceus, Terrakion (yeah I know you know). Groudon is good on offensive teams too, while not exactly being very offensive itself it still provides rocks. Other than that, a good way is having few pokes it can actually set up on without taking huge damage.