cambia el AND por OR
Código PHP:
$result_recados = mssql_query("SELECT * FROM [$nom_tabla2] WHERE ((DIA=$var_dia) AND (MES=$var_mes) AND (ANO=$var_ano) AND (HORA BETWEEN $var_hora AND $var_hora2) OR (MINUTOS BETWEEN $var_minuto AND $var_minuto2)) ORDER BY HORA ASC");
perdona que insista con lo del campo
time, pero puedes manipular los datos por separado aunque se guarden el un mismo campo, por ejempplo tu puedes pedir la hora y los minutos a parte y al momento de guardar simplemente los unes y si quieres mostrarlos por separado puedes usar split o explode para dividir el contenido en horas y minutos y poder manipularlos individualmente y te es mas facil hacer la consulta.
saludos.