I see books as sources of information for look-up, rather than a collection of knowledge that I have to learn by heart.
That is, I don't necessarily need to know everything that's in it, but I do need to know what kind of information I can find in it. As a simple example, I would not bother about the precise syntax of a class definition, but I would remember it tells me "basic stuff about classes".
So whenever I have problem falling in the category "basic class problem", I know which book to pick to find the information I need.
It is, as you say, much easier to learn by doing, preferably before you have to make something "for real". I always try to do a small private project beforehand. Anything that you pick is good, as long as it contains the matter you want to learn about. In a sense, whether the project succeeds isn't even relevant for learning.
As for your education, can't you express your concerns? If you get courses that don't work eg because you didn't have other courses, why not say so? If you got a course chosen, and it doesn't work as proposed, try to find an alternative solution by moving things around and discuss that. If you don't, you're the only person with the problem, so it's in your own interest to speak up.