Как домашний проект в принципе неплохая идея, слишком уж муторная, и фактически нереальная для одного разработчика. Вы задолбаетесь писать драйвера для апаратной совместимости с чем то из СКУД оборудования, там очень много нюансов, тот же NFC протокол если описывать нормально, это очень и очень много строк кода. Даже используя ACR122U и его SDK. Второе вы хотите сделать эдакий комбаин со всем на свете, и бедная малинка такого надругательства просто не переживет, не для нее это. То же распознавание чего бы то не было, крайне ресурсоемкая задача.
Если по теме:
1. Используйте базы данных, которые будут совершать как можно меньше запросов к SD карточке. Например Redis, которая будет жить в оперативной памяти.
2. Без разницы. Изначально нужно определиться со стеком для бекэнда, а учитывая вашу идею это крайне нетривиальная задача, а там хоть html и js чистый используйте.
3. Как я писал выше, вы хотите комбаин, а это уж извините, бред. Не на таком оборудовании. Реализовать что-то одно. Например распознавание, или биометрию, или карточки, еще куда не шло, если делать все сразу будет нерабочий франкенштейн