Главная причина, почему ваша идея смысла не имеет: пользователь принесет хаб, и получит столько портов, сколько он хочет. А если пользователь хитрый,
он спрячет хаб и флешку внутри мыши/клавиатуры.
1) Нет, порты USB внутри подключены к микросхеме-хабу, которая в 99% случаев является глупой и никак не управляется.
2) Если в машине установлены разные хабы (например, на старых материнках есть отдельный хаб usb 3.0), то да, вы его можете выключить в диспетчере устройств, и отключить порты, с ним связанные.
Так что остаются физические методы отключения - только не надо в разъемы ничего запихивать. Порты на передней панели можно отключить, отсоединив их от материнской платы. На задней панели - можно заказать на лазерной резке планки под разъемы без соответствующих отверстий.
3) Всякие разные программы, фильтрующие флешки по разным критериям, есть как для форточки, так и для линукса. На линуксе достаточно поколдовать с правилами udev.