Hola indeed:
No se si es lo que pides, pero es posible que quieras que se restaure un color, pero al poner onmouseout, restaura el que hay puesto en el tag y no el que tenía anteriormente ¿?
Hace poco contesté algo parecido...
Se trata de poner en la cabecera una variable en donde se va a guardar el color de fondo, y restaurar ese mismo color.
La cosa quedaría así:
<head>
<bla, bla, bla...>
<script>
var leer_color;
</script>
...
</head>
<body>
...
<bla, bla, bla...>
<table><tr>
<!-- ahora la celda en cuestión... -->
<td
onmouseover="leer_color = this.style.backgroundColor; this.style.backgroundColor = 'red'"
onmouseout="this.style.backgroundColor = leer_color">
<bla, bla, bla...>
...
Espero que te sirva.
Saludos y Felicidades