Используйте не жадные в начале, чтобы уменьшить возможности для сюрпризов. Используйте не захватывая паренов, чтобы сгруппировать альтернативы, которые вас не интересуют. Добавьте ?
к письму, чтобы сделать его необязательным. Следовательно, попробуйте это:
$line =~ /The closest .*? (?:is|are) genes? (.*)$/;
Чтобы увидеть, куда вы пошли не так, кстати, просто сравните вышесказанное с тем, что вы изначально пытались.