So I recently got into fingerstyle guitar and learned to play Someone Like You (sungha jung) and it took me a couple months, which I think is too long. But when I started looking for another song to learn I realized that I have difficulty preforming many difficult things like a thumb slap and even some chords I cant stretch to and play cleanly. I also see people who are able to pick up a guitar and just start playing some tabs well, which I can't do. So I was wondering what should I be practicing to learn the basics/intermediate level of guitar so I can learn songs quicker?
"have difficulty preforming many difficult things like a thumb slap and even some chords I cant stretch to and play cleanly"
Seems to me working on your weak spots is always a good place to start. However if you can't do those things while not fingerpicking, e.g. While using a pick,there is no way you'll be able to do it while adding more complexity in your right hand.
Finger picking is mostly a challenge in the right hand, so if you can play some chord changes smoothly with your left hand you, maybe just take C, F and G for example and then arrpegiate the chords with the fingers. Since the left hand is already solid this will help you establish a solid right hand.
There are certain patterns you can learn with the right hand (google travis picking) that you can practice first on one chord then on a simple change and then once that pattern is mastered in the right hand you can now play that pattern while working on more complex stuff in the left hand.
That would be my overall approach, if you can play something easily with one hand then play that and work on something more difficult with the other. If you are working on a new picking pattern play it with simple chords changes or one chord and then increase the chord complexity. If your working on a new left hand technique, like stretching, then play it with a picking pattern you have already mastered.