Отвечая на мой вопрос на основе ответов от разработчиков драйвера USB HID для Linux:
Вопрос 1. и 2 .: Do
ioctl(open("/dev/input/event7", O_RDONLY), EVIOCGRAB, 1);
Пока этот дескриптор файла открыт, генерируемые события будут идти только
к этому дескриптору файла (не к другим open () того же устройства или к
системная клавиатура или пул событий мыши). Максимум один процесс может содержать
успешный EVIOCGRAB на устройстве HID одновременно. Лирк можно настроить
сделать EVIOCGRAB.
Вопрос 3. Настройте udev для запуска программы после подключения устройства.