How much of a brain break are you giving yourself?
If you're spending a large amount of time on learning each day, you might look into structuring your learning so you're doing it in small segments each day. Learn for 30 minutes, then go do something mindless for an hour.
Since short term memory is largely written to long term memory while you sleep, maybe try working on it an hour or so before you go to sleep.
Also, how are you learning? Are you doing exercises as you learn each concept, or are you reading a bunch then trying to throw everything together after?
For me, the only way I retain information like that is to actually work with the knowledge. Taking notes, like many have suggested, doesn't work for me. I learn best when I have a task I want to accomplish, and I have to go research what I need to complete it.
Guided learning (school, training courses, books) really doesn't transfer to long term knowledge for me, so I structure my learning differently. I feel like this is a pretty common thing with ADHD.