De esa manera tan directa, no.
La opción clásica es transformar las horas a segundos, hacer la resta, y luego convertir los segundos de la diferencia en la unidad que queramos.
Otra opción es usar los módulos DateTime para hacerlo de forma más cómoda y precisa.
Using perl Syntax Highlighting
#!/usr/bin/perl
use common::sense;
use DateTime::Format::Strptime;
my $parser = DateTime::Format::Strptime->new (
pattern => '%H:%M:%S',
locale => 'es_ES',
time_zone => 'Europe/Madrid',
);
my $hora1 = $parser->parse_datetime('14:25:00');
my $hora2 = $parser->parse_datetime('14:20:00');
my $diferencia = $hora1 - $hora2;
say $diferencia->delta_minutes() . ' minutos'; # 5 minutos
Coloreado en 0.002 segundos, usando
GeSHi 1.0.8.4
Este ejemplo está muy simplificado (como sabemos que el resultado son minutos, preguntamos por 'delta_minutes' de forma directa), ya que suele ser complicado obtener la información de los objetos DateTime::Duration, pero al menos sirve para mostrar solo un poco de lo mucho que se puede hacer con DateTime.