Как блокировать выпадение клавиатуры?
Попробуйте вместо input использовать что-то другое, например, стилизованный div. Тогда клавиатура точно не вылезет.
Для мобилок можно использовать родной календарь
htmlbook.ru/samhtml5/formy/kalendar