For an LW reader, the first step towards learning about "X" should be to find a non-LW forum devoted specifically to "X", and to make a habit of reading it.
Some great books at high school level (listed approximately in the reading order):
Writing style comment: the third-person writing, where we're asked to consider some unnamed student, makes this seem like a hypothetical. The content, together with the title, makes me assume we're talking about you, specifically, in a very non-hypothetical manner. I find this somewhat jarring to read, as I'm continually wondering why we're talking in hypotheticals about a clearly not hypothetical situation.
OK. Criticism received! I will be careful about that in the future.
I think I chose to switch to a third-person voice because I felt as though thinking about it in terms of a hypothetical might merit more natural thinking and feedback, rather than feedback which might reflect a more judging attitude.
What hobbies do you have? What extracurriculars are you engaged in? Competitive math, physics, science olympiad, and similar events are a good way to learn all sorts of stuff. Pursuing a hobby that involves some engineering can be a great way to learn math and physics. Electronics, robotics, rocketry, and the like might be fruitful areas to explore, but can all rapidly exceed your budget.
Where do you live? Is there a local hackerspace / makerspace you could get to? I suspect broadening your social horizons may be an excellent bet. These may also be able to provide tools, workspace, and collaborators that might make some of the above hobbies more approachable on your budget.
I highly recommend learning to program if you haven't already. The logical structure will help train your thinking in all kinds of useful ways. If you already know some programming, get better at it. Contribute a patch to some open source project you use.
How best to learn math depends on what kind of math and what your goals are. I think the best way to learn calculus is through learning physics. Learning number theory is fun, links reasonably well with programming, and is less likely to make your classes even more boring as you simply get further ahead in the same sequence of material. You could combine this directly with programming via something like Project Euler.
Short summary: find things you enjoy doing that force you to actually use the math / physics on real world problems.
Also, is there a LW meetup anywhere accessible? If so, attend that!
I really can't speak highly enough of being around other people who you can relate to, and who can help with these problems based on a more personal understanding of what you need.
Don't buy textbooks; you can't afford them. Some are available online (legally or illegally); most others cover topics that you can learn about for free. You can probably get questions answered for free online- either at the various forums devoted to the subject, by emailing a relevant professor, or by asking somebody here (via pm or more personally).
If your high school has a math club, join it. If not, grinding math contest problems can still be useful. Try starting out by running through the AMC 12 problems on AOPS, which have solutions; note that doing well in math contests can be listed as an extracurricular and is a visible sign of awesomeness for colleges. (You probably shouldn't expect to do over half.) IF you want more, I have access to a pdf database of ~6000-ish problems.
Taking Calc BC may not be helpful for learning math. AOPS has a good and relevant article here. Essentially, what you're saying (I think?) is that you need a better understanding of more basic math (algebra+geometry)- calculus won't be very helpful for that. Instead, as above, try learning to solve more advanced/difficult applications using the math you already know. Math contest problems are an easy source of these; I would also suggest self-learning math proof techniques in much greater depth than in the standard curriculum (induction, contradiction, proving the contrapositive, etc.)
You probably understand something when you a) can write down the proof, with very few missteps, whenever you want, and b) can envision a geometric analogy for the thing in question in your mind.
Incidentally, there's a facebook group for LW Highschools. (It's half college freshmen by now, but still...) Also, I think somebody had been running a meetup via skype (???)
Get a copy of Godel Escher Bach
I also recommend: Flatland (followed by Sphereland and Flatterland), Alice's Adventure's in Quantum Land, and James Gleick's Chaos
And Stoppard's Arcadia after Gleick.
Khan Academy is OK to use for clarification of topics. But it serves to help students and is thus tailored around a conventional school education. It has a forced pacing which can sometimes bore me or intimidate me because I know exactly how much time I have to put in to learn a course through Khan Academy videos alone.
What I mean by mathematical maturity is my familiarity with mathematics. I do not know how to properly read a traditional mathematical textbook and am unfamiliar with vocabulary, notation and methods.
Since you're interested in physics, I highly recommend Einstein for Everyone. The whole book is online.
I read a lot of popular science and math when I was in high school, but I think the one thing I did that had the most significant impact on my future cognitive development was learning how to program. If you are not doing this, I recommend that you do, even if you're not interested in programming as a career option. Before you dive into teaching yourself physics or math, you want to develop good habits of systematic reasoning, and learning how to program is the best way to do that. Also, it's fun.
I recommend How to Design Programs, again available online. You can get the programming environment, Dr. Racket, from here.
Beg, buy, or borrow a laptop that you can "take notes" on in class, develop a very quick alt-tab reflex, and learn to program in another window.
This will improve your math skills somewhat (I still think of trigonometry in terms of the game Asteroids), will give you still that will be useful no matter what your career is, and is really rather addictive. Also, if you decide to do programming as a career or serious hobby, it will give you a good start on your 10,000 hours.
Bonus: you can do it during your non-math classes as well. Use Wikipedia to catch up on the important or interesting parts of history and literature later.
I can recommend this route from personal experience. It won't do much for your grades, but there are colleges that will overlook that.