I think you haven't grasped the complete sense inside Spanish verbal tenses:
Pretérito perfecto compuesto (a.k.a. antepresente, or just pretérito perfecto)
He aprendido → I have learnt.
This phrase does not mean "I have studied", because you can learn by other means besides studying. It expresses that you were learning, and in the moment you say this (present time) you have already done that process, so you can be sure it is done. Now you have the knowledge that you were learning.
Do not think this is the precise equivalent for English Present perfect just because both are built in a similar way. There are some differences, according to the Spanish-speaking region where you look at. For example:
it is widely used in Spanish from Spain, to express a something about the past, with or without a link to the present. In many countries in South America in those cases is used the "Pretérito imperfecto" or the "Pretérito indefinido" instead.
in most of America, it is used to express something done and already finished in the past.
Aprendo hace dos horas
This is a present action, but just as you write it, sounds strange to me. I would write instead:
Aprendo desde hace dos horas.
Estoy aprendiendo desde hace dos horas. → I am learning since two hours ago.
Both convey almost the same meaning in Spanish, as far as I know, because you give a time clause at the end, that stresses the fact that it is something that is being carried out.
Aprendí hace dos horas → I learnt two hours ago.
This means something completely finished in the past. In your example, this process ended two hours ago, and after that, no further improvement was made.
In general, pretérito indefinido must be used when you are talking about something happened in the past, but not very recently (because if it were too recently, the Pretérito perfecto compuesto should be used instead).