I'm also a junior with a somewhat similar situation. I've come to believe from the info I've gathered over the past few years that GPA is not the most important thing even after class rank. SAT/ACT scores are 2nd to class rank, so having quality scores will definitely help.
Also, just because your school won't tell YOU your class rank, does not mean your school won't tell USMA your class rank. My counselor told me it's against strict district policy to even hint at class rank, yet a candidate for the class of 2013 with a different counselor was given approximations (top 10%, top 20%, etc.).
Most importantly, don't give up. GPA does matter. Just not in the school-specific 3.4535 out of 7/5pi way (hopefully, my poor hyperbole of an example got across the idea that GPA is just too arbitrary and unstandardized to really count for USMA). Try to focus on the transcript itself. Emphasize challenging courses with success and also strive to simply show improvement where you feel you have come up short in the past.
Take the SAT/ACT as many times as you can stand and/or afford. Then take them both two more times.
Hope this helps, but take my word with the grain of salt that I'm also a junior and have no more concrete knowledge than what I've gathered on this forum.