Использует ли кард-ридер какой-либо код ключа? Фактическое событие нажатия клавиши имеет свойство charCode, так что вы можете программно определить, какая клавиша была нажата. выясните, какой код CharCode отбрасывает ваш читатель, а затем добавляет его, только когда событие соответствует этому CharCode.
На самом деле вы должны просто отследить событие клавиатуры и посмотреть, что вы можете найти в нем уникальным, свойства вроде keyLocation могут помочь определить, что исходит от считывателя и клавиатуры.
Если ничего не помогает, вы можете потребовать, чтобы пользователь сделал что-то, что в значительной степени помешало бы ему печатать одновременно, например, удерживая клавишу Alt при чтении карты. в этом случае вы можете проверить, является ли altKey истинным во время события.