Go here and search for piano books:
https://z-lib.fmAny piece, no matter how complex, can be slowed down enough to make it simple to play. So if a piece is hard you slow it down as slow as needed to play it. You can also take it measure by measure, beat by beat, or note by note if necessary.
But generally speaking those issues you are talking about are solved within the contests of small "test"/"exercise"/"simple" pieces. When you try to do them in complex pieces but have issues everything sorta grinds to a halt. It doesn't become fun but a druge.
There are always things that any piano player will, come across that they are weak on. The way to solve these problems is take them out of context and work on them individually and isolated and slow and built up until you get a feel for it and then try to do it in context... if it is too hard then you figure it out.
E.g., part of figuring it out is doing it enough and realizing there is a certain way you have to learn to figure it out.
Are you playing with a metronome? If not that might be your problem there. Take the songs you know well and play them to a metronome. This can be problem if there is a tempo changes or time signature changes in some ways so maybe pick a piece that is pretty straight forward meter and time wise that you know. (you can overcome this by having a programmable metronome but likely you don't)
Then just set the metronome at a tempo where you can "play to it". You should be able to play nearly perfectly in time. If not slow it down a little. If you slow it down too much you might find it is harder. Your goal is to play along with the metronome. If you don't exactly know what that means I can go into more detail but basically it works this way:
I'll go ahead and walk you through it with gymnopedie no 1 since you say you know it.
The key is D, it's in 3/4, the tempo is irrelevant. [note that the key signature doesn't always mean what one things but typically it's suppose to tell us something about the chords and accidentals used] Of course note the dynamics, it's soft, but we will leave that out for now too.
D means that you have two sharps(you have to memorize this by learning the cycle of fifths key signatures). F# and C#. You also know this by knowing your theory about key relationships. C# is the leading tone to the D, the tonic. the F# is the maj 3rd of D and it is the leading tone of the G, the IV chord of D as it comes from the key a 5th below.
What all this means is that the chords you are going to use, mainly, are those diatonic to D which are D, Em, F#m G A Bm and C#dim. These are called the "diatonic chords" because they don't use any "chromatics". You should be able to play these chords in their triadic patterns and inversions. These are very simple to play but you have to be very comfortable with them.
So you need to set a metronome to 3/4.What this means is that it should be tick tock tock(so you really want a digital metronome which you can get free). The accented tick corresponds to the first note after every bar line(this is called the down beat).
The first bar is a Gmaj7 chord. Why? Because the LH is a dotted half note on G. A dotted half means it lasts for 3 quarter notes. The quarter note "gets the beat". this means that it lasts as long as one "metronome tick(or tock). The RH plays a Bm chord(the vi chord). That is, even though we are playing in the key of D we are starting on the G chord, the IV chord. We can make a quick scan of the music and see there are no accidentals until later so either this piece is in G Lydian(a mode of D) or in D or possibly Bm). This really doesn't matter but helps us narrow down how the piece may feel and it is something we just know from theory and we can see at a glance without much effort.
One also notes basic pattern being used here. It is very simple. Once you can play the first bar rhythmically and in time then almost the entire piece is doing that + a melody which we can also visually see is quite simple.
Ok, so set your metronome. Rather than tick tock tock we will say 1 2 3 | 1 2 3 | 1 2 3 | until the piece ends or changes meter.
The first 4 bars are Gmaj7 Dmaj7. Note that it repeats, you should be able to look at bars 1 and 3 and 2 and 4 and see they seem to be identical). So this cuts down on the work. If we can play bars 1 and 2 then we just repeat it. What this does is give you time to look ahead and see what is coming unless you struggle because it's too hard.
Your metronome should be
1 2 3 | 1 2 3 | 1 2 3 | 1 2 3 | 1 2 3 | ad nausea.
Those bass notes all by themselves at the bottom are always start on the one and they last for three beats/clicks(this is what the dotted quarter means = 3 quarters, a quarter is one beat, that is what the 4 in the 3/4 (for simple time sigs) tells us).
The upper part(in this case it is in the right hand) are just chords. Bm then comes F#m in first inversion, then Bm and F#m in 1st inversion again(as we already saw, it repeats).
So playing to the metronome(which is what all this is about in the first place), looks sorta like this:
RH: Bm - | F#m - |
LH: G - - | D - - | repeat once more.
C : 1 2 3 | 1 2 3 |
Good news is that you already know how to do this. You just have to play it with the metronome so that when you hear the tick you get those low notes right on the sound of it and the first tock(2nd beat) you play the chords(you already know). It should be in time, as if you are playing "patty cake" with the metronome. The metronome is your friend. If you play in perfect time you wouldn't even hear the metronome. If you hear a click sound a little after you play or a little before you play then you are "out of time". If you play so out of time it makes no sense then you need to figure out exactly what it means(I'm sure there are videos on line that will demonstrate these things).
Now, in fact, the next 4 bars are EXACTLY what you did in the first 4 EXCEPT that you have to do all that with just the LH so the RH is free to play the melody.
RH F# A | G F# C# B C# D | A - - |
LH: Bm - | F#m - | Bm - | F#m - |
LH: G - - | D - - | G - - | D - - |
C : 1 2 3 | 1 2 3 | 1 2 3 | 1 2 3 |
Now, you so already know how to play all this. So it is all about synching up with the metronome. You likely can already do this ok unless your timing is bad or you never learned to play with a metronome or other people. A little practice should help you figure it out.
NOW, this is where the metronome comes in to save the day: SPEED IT UP! The metronome lets you control the speed in a regulated way. You can find the tempo you can play at perfectly then you speed it up a little. Then a little more. You are trying to train yourself to play faster and faster. This helps you build stamina, endurance, timing(it gets harder since you have more stuff to juggle in less time).
What it does is train your mind to sort of put things on auto pilot. This helps you focus on other things.
Now, once you can do this and play to a metronome. You can use the metronome to practice difficult parts, figures, etc.
E.g., suppose you are playing some thing like 3 against 4 where the LH has to play 3 notes(a triplet) against 4 notes). You then put on your metronome "tick tick tick tick" and you get your LH playing triplets and you try to play 16th notes on top. You can slow it down until you get the correct feel(it's a certain type of rhythm which is based on a sextuplet). But with the metronome you can dial it so you know exactly how to do it and can practice in a loop over and over until you get it.
If you are having trouble with trills or anything. Use a metronome to help control what you are doing and to make sure you are doing things correct. Then speed it up as slowly as you need until you get it. The metronome is somewhat magical because it helps "lubricate" our brain. We have internal clocks and so having it synched up helps organize everything more naturally. E.g, digital computers have internal clocks that synchronize every aspect of the machine. Clocks are natural. The metronome is just a type of "clock" but one that helps us focus on things. E.g., you can use it to help you sight read to by forcing you to go at a steady pace. This helps you internalize reading the notes.
Note that when we read music we typically are not reading like I've shown. I do not read each note of those chords. I read the root note and the "shape". In this case it is a root position triad. I know then that I only have to read 1 note, the bottom, to know the chord. It's a B, we are in D, so this makes it a minor chord. So the calculation isn't reading 3 notes but 1 note + the shape + the key. This seems like it is 3 things too but it is not. It's more like 1 thing because it's nearly instant and it connects to how to think about the keyboard(e.g. hand shapes). The D chord is read similarly. I see the D at the bottom(the 1st ledger line is E), I know that a chord symbol below the first line is a D. The chord in the top stave is a 1st inversion. I recognize it immediately because I've seen it likely a million times(not that specific one, but I've seen that shape all over the place. This is because most music is based on chords).
For the melody, I'm not thinking F# A G F# C# B C# D A. Although I can, as I just showed. I'm thinking ok, we are starting on F#, then it leads up a 3rd, that is, I skip a tone. I know how to do this on the keyboard because I know the Dmaj scale. Then it proceeds "scale wise" down then leaps down a 4th. I know how then down scale wise and up scale wise. Again, I'm not really thinking about it that way, it's just more like "up down down down down up up down) and the gaps basically tell me how much. I know how much because I've practiced my scales and basic melodies with sight reading. The "the simple stuff" has helped me learn that "That's a P4 gap" or "That's an Octave". You learn to recognize it. There are all kinds of little rules that exist but one doesn't think about those consciously but one needs to know them. All those little rules or tricks give one a quicker way to recognize what is going on. E.g., a 3rd, such as the 1st two melody notes, is a 3rd because they are on the same lines. I also know tricks like, (assuming C) Fmaj7 are all the spaces and Emin7 are all the lines.
But the more you practice the more all those things recede into the depths of the subconscious but you have to do simple stuff to get it. If you overload your brain(something I thought was good when I was young) you end up wasting a lot of time in the long run. Always start as complex as you need to do it "perfectly". I'm not saying it is easy but I'm saying don't make it any harder than it has to be or you will start to be counter productive.
Everyone has their own way to some degree. Also, what I'm explaining is not really how I think about it now. That is how I thought about it when I was studying sight reading. Sometimes I still go back to thinking about it that way but now I think more in terms of musical ideas and patterns and chords. E.g., it seems if I just know the chord that all the details get sucked into it. Sorta like how we use words. We don't really have to think about spelling out words when we read them or recall their meaning. We just do it. The word, the spelling, and the meaning all become the same but the word represents all that stuff(it's like a shortcut). So a C chord means many things to me and any part of music that uses a C chord will just be a C chord and, for the most part, no matter what it's doing my brain just see's it as a C chord and the specifics are automatic. This isn't always true and specially when the music is very strange to me then I have to revert back to more basic understanding.
I don't know if other people sight read this way or not. Others could chime in with their own versions and ways of of doing it. I'm not saying my way is the best. I started with theory and calculation and so my brain resolves everything that way. Likely people that started differently will resolve it in other ways. It would be interesting to hear how other people experience reading. I imagine people that approached it more musically such as connecting it to singing will associate the notes and chords in that way.
[Note I also left out thinking about articulations, dynamics, fingering, etc. All these are also being thought about every instant but much of it recedes into the background over time(experience)]