Congrats that you got him through this point in his life, yay!
How about sticking the names of his best friends onto the cake as well as his, that’s a start. Actually, you could make a big sheet cake, then make each one their own cupcake, with their name on it, and attach it to the cake with ribbon in the school’s colors, so each grad gets his own (that sort of takes the place of a gift but recognizes each one). You can mold choc confect. candy into graduation shapes, the hat, the diploma, etc and stick on the cake and cupcakes, and also use as favors for the grads. You can get all the supplies at Michaels or AC Moore, and they aren’t expensive.
I think it’s ok to give them the card when they arrive, unless you don’t want one to know what the other got (you might want to tell his best friend to keep what he received to himself, to not hurt other’s feelings, or just give that one out before hand). Love the pic on the garage idea, how fun. I’d use balloons all around too, in school colors.
For inexpensive gifts. How about a personalized key chain with the grad’s name and 2009 (yr of graduation), and use school colors? If you make them yourself, you can make several for under $10, you can add charms, metal or resin, etc., to represent whatever teams they were on, and their life hobbies, like a football, baseball, soccer ball, chess piece, cheer leader horn, whatever, and use school colors of course. I make these, and you are welcome to contact me privately if you want to see a pic, or directions on how to make. oh, I do sell these too).
Grads love to hang the tassles, or whatever from the car rear view mirror, so you could get them a rear view hangar with 2-0-0-9 on it, and maybe the name of their school logo/team (cougars, tigers, mighty ducks, whatever). same idea as the key chains.