Никак.
ReplyKeyboardMarkup не имеют никаких отличий от текста и являются лишь шорткатами для пользователя, чтобы они не вводили текст руками.
Непонятно как клавиатура может "проскочить", нажатие на кнопку "Яблоко" на 200% идентично отправке "Яблоко" вписанного вручную
while a!=0 and b!=0:
цикл работает, пока a и b не равны нулю. Вы изначально задаете их не равными нулю, в цикле никак не модифицируете их, он бесконечно работает
Вы ее импортировали один раз - она один раз и инициализировалась. Все правильно. Если уж нужно сделать так, то оборачивайте свой цикл из user_id_id в функцию, в этой функции возвращайте mas_user_id, и в основном файле выполняйте эту функцию