I suggest you don't start learning MySQL unless you have a clear need for it. With a "plain content" site, you don't need a database (although many publishing tools use one). If you want a "blog like" site, with user comments, then you need a database. Using a database isn't "all or nothing"; for example, I use a database for subscribers and payments, but not for my content (which is "static").
Your web hosting will come with a huge number of tools, but that doesn't mean you should use them all. It's commendable that you want to "learn the right way", but the reality of learning is less linear. You could spend 5 years diligently learning all the different web technologies, in an effort to "have a good foundation". But by the time you finished learning all this, most of what you learned would be outdated, and you still wouldn't have a website.
You cannot avoid "patching things up later". Iteration is inevitable. Don't try to create a "perfect" site that's ready for anything; just try to create a site that can satisfy your current requirements. If you don't need a feature, leave it out.
I'm not saying you should shun all planning -- only that excessive planning can hobble your project. Do enough to get your "first draft" working. As you go along, you'll uncover problems with your initial methods; these problems will direct your learning, so that you only learn about things that are
relevant to you.
You cannot learn everything, and you cannot create a truly "future proof" website. Attempting to do so will lead to massive "scope creep", whereby an initially straightforward project becomes suffocatingly complex.
Thankfully, there are lots of knowledgeable people here who can help point you in the right direction. You need only explain what you want to accomplish, as specifically as possible, and we can recommend what to learn and what to ignore.