Yo lo haría sin usar el contains entonces,
Código:
buscar = $(this).val();
$('#lista li').removeClass('resaltar');
for(cont=elnumerodelultimobuscado;cont<$("#lista li").length;cont++)
if($("#lista li:eq("+cont+")").text()==buscar)
{
$("#lista li:eq("+cont+")").addClass('resaltar');
elnumerodelultimobuscado=cont;
break;
}
Vas buscando una a una y paras cuando la encuentras, la siguiente vez el contador seria el li actual y buscas la siguiente, etc
elnumerodelultimobuscado es global y empieza a 0,
espero haberme explicado!