non puo' essere diversamente: se setti una proprieta' css via javascript (con jquery o meno) e' come se la definissi nello stile in linea dell' elemento, che ha "peso" superiore ad una regola generica in un css esterno;
prova a cambiare altro piuttosto che il background nell' :hover e vedrai che lo stato viene ancora rispettato

assegna e rimuovi classi invece di settare valori per proprieta' css