You probably need to go take a few college credits if you have not already done so. It depends on your state and how they award credit and diplomas, some states will not honor a "home school" diploma, and require you to take the GED or some college (normally 12 credit hours in basics). Here in Texas if you are home schooled you are required to take an exam at the local school district your last year of home schooling, depending on the score you will or will not be awarded a diploma from the local school district. If you do not test well you will have to get a GED or find a college that will allow you to enroll. Most large universities will enroll someone who was home schooled (if they test well), however most community colleges will require you to get a GED prior to enrollment.
The Navy (any branch) is going to go by what your state says (i.e. the Texas example for Texan enlistees). The recruiters are not fucking you around; they simply have some set guidelines they have to follow. Now here is the shity thing, if you go and get a GED like they will probably make you, you will probably have to still take those 12 college hours to get into any special programs. Believe it or not, apparently every 20 year old dude wants to be a SEAL. There is no shortage of applicants, just a shortage of qualified, mentally and physically capable.
Good luck, I would personally go take the GED and try and test out of as many college credits as you can. Then take whatever else you need, then come back to your recruiter the most qualified applicant (that way he can get you the contract you want).