Don't know about the STA-21 Academy option...
However, if you do end up on the banks of the Severn, it will be for 4 years. The Naval Academy doesn't accept transfer credits. However, you will have the opportunity to test out of certain classes at points during your stay at USNA. It won't count for credit, but it will open some holes in you class schedule for more electives or free periods, based on your major and prior semesters' course loads. It also make it easier for you to apply for starting grad school opportunities during your senior year.
Bottom line, even if you have prior college up fron, you'll do 4 years at USNA.
That should answer one of your questions.