В макете и на сайте шрифты могут отличаться. PS рендерит их по своему и сглаживает автоматически, а браузер не может их так сглаживать. Поэтому вы видите разницу.
1. Не android определяет, а сам браузер. Запоминает он просто, а именно есть определённый словарь полей. Например для логина это: email, login, user, username. А если их несколько на одной странице, то раздаётся приоритет и выбирается самый главный.
2. Хранить базу в зашифрованном виде (лучше всего придумать свой алгоритм шифрования), а уже когда запрашивать пароль, то производите декодинг.