んじゃこれで

my %foo;
my @sort;
for (@hoge1) {
  /\A(\d+)(.*)\z/s;
  if (exists $foo{$1}) {
    $foo{$1} = "$foo{$1}$2";
  } else {
    $foo{$1} = "$1$2";
    push @sort, "$1";
  }
};
my @hoge2 = @foo{@sort};