Boa tarde o problema é que no primeiro case você usou o ou e uma das comparações esta dando sempre True , pois o horario das 18:50 ou superior também é maior que 16:30 , tente o codi abaixo.
 
<?php
    // DEFINE O FUSO HORARIO COMO O HORARIO DE BRASILIA
    date_default_timezone_set('America/Sao_Paulo');
    
//echo date('h:i:s').'<br />'; //Resultado: 06:52:49
//HORA FORMATO BRASILEIRO
$hora = date('H:i:s'); //Resultado: 18:52:03
switch (true) {
      case ( $hora >= '16:30:00' && $hora  < '18:50:00'):
        echo 'Informação da Hora ';
        break;
    case ($hora >= '18:50:00'):
        echo 'Informação do Horário ';
        
        break;
}
?>