Hola Ramón!
Al programa lo veo muy bien. Funciona y responde a la consigna planteada en el ejercicio. Veo cosas muy destacables en tu planteo.
Entre lo destacable: el código está muy bien organizado dividiendo las tareas en clases.
Tienes una clase cuya tarea será tomar los datos entrantes por el teclado. Otra clase que verificará la aparición en orden de las letras iguales en las dos palabras. Y por último una clase donde está el método principal el cual es corto. Eso está muy bien!
Por otro lado hay algo que me ha llamado la atención en la clase VerificarLetra. Tienes dos if seguidos (cada uno con su respectivo else). Al primer if (con su else) deberías borrarlo. El programa funciona correctamente con el segundo if (con su else).
Seguramente fuiste trabajando el código, probando distintas posibilidades, y se te olvidó de borrar esa parte.
Y por último te haría una sugerencia: a la clase Teclado yo la renombraría por un nombre más significativo a lo que hace. La clase -tal como está planteado tu código- es un GestionadorDeEntradasTeclado. Creo que ese nombre es más apropiado para esa clase (o algo similar).
Lo mismo que a su método buscarPalabra() también lo renombraría por algo que sea más alusivo, por ejemplo podría bien llamarse recogerPalalabra(), que verdaderamente es lo que hace.
A seguir adelante!