Se me ocurre hacer algo asi:
alter session set nls_comp=binary (rapidez)
select monto, id_cliente,fech_vencimiento
from factura a
where fech_vencimiento in
(select max(fech_vencimiento) from factura x where fech_vencimiento <= to_date('30/06/2006') and x.id_cliente = a.id_cliente)
and monto >=10000 and monto <=30000