"Full fledged" books are not really that useful once you get past learning a programming language. For games, you mostly deal with graphics and math. Graphics is provided by the library you use. I wouldn't start with SFML though - there are simpler graphics APIs out there - I think the simplest one out there today (and also the most accessible) is the HTML5 canvas 2D API.
The problem with books is that they focus too much on concepts and don't really deal that much with explaining the code. They usually just throw in some code, and when they do try to explain it, they do a worse job than the official documentation for whatever API is used, often with lacking or false statements about what the API functions do. And if you don't stick to just one language/library, you will learn the basic concepts involved with graphics in no time, without ever reading any books.
IMHO, right now you need start practicing writing code and stick to it... I agree too that tutorials might not be what you need, but they sure are better than code without comments - it doesn't get any easier. And don't be afraid to copy paste code - as long as you also try to understand it. Otherwise, you would need a lot of imagination and ingenuity to come up with your own code for everything - we're not geniuses.
I started with Pascal BGI graphics. At the same time, I was also writing and dissecting Winamp visualizer scripts - I was intrigued by how they looked so 3D-ish - so my final-year project in high school was a simple 3D wireframe graphics editor/visualiser implemented in Pascal, using BGI, and the 3D-faking technique I learned from Winamp. I even implemented a MessageBox function and a file-open/save dialog for it from scratch - just drew some rectangles for the boxes and text for input - because I was doing windows programming at the same time, I implemented these as a sort of Windows modal dialog boxes - each with it's own window procedure, and I even named the few window messages I implemented similar to the Windows messages.
Before this, I was doing text-based graphics using block-text characters in DOS (but this can't really be called graphics) - but I gave that up quickly because the screen was too slow to refresh.
Also at the same time, I moved on to Windows GDI with Turbo C++, and the biggest problem I had (aside from the new language) was that the function names were all different, and the new concepts like "device context" were really confusing. But I decided to be patient and push forward.
These were all easy to understand, as there were a lot of simple examples - the high school trigonometry classes helped me a lot with the math in the Winamp scripts, and since then they stuck.
During all this, my only sources of documentation were the Pascal help files and the win32 help file (which is now held in MSDN), and a few example programs from Pascal, Turbo C++ (they were actually C-only programs; I only learned C++ a lot later).
I did all this during the last year of high school, on a 486 computer.