Правильным вариантом будет 'has been learning', так как это указывает на действие, которое началось в прошлом и продолжается до настоящего момента. Предложение означает, что Кейт изучает английский язык в течение 2 лет, то есть процесс обучения всё ещё длится.