Great question - we get this a lot, and there are a few recommendations I'd have for you:
-If you the ability to take the exam a few months before you definitely need the score, you might as well. Because you need to wait 31 days between GMAT attempts, having at least a month's lead time takes quite a bit of pressure off of you - in that attempt, the worst thing that can happen is that you underperform but learn from the experience in order to improve on the next one. Simply not having the pressure of "finality" will help you to relax and perform to the best of your ability.
-Your official scores will take approximately 20 calendar days (as noted on the official GMAT website) to reach the schools.
-However, you'll receive your unofficial score report immediately upon completion of the exam, and often times schools will accept a fax copy of that report to complete your application file while the official report is en route. Please be sure to arrange for this with each admissions office beforehand, but in many cases such arrangements will suffice if you need to take the exam close to, on, or even after the application deadline. All told, however, you would be wise to take the test early - why add the stress and pressure if you don't have to?