You're an awesome dad, I'm 17 years old, and I can tell you, even if you spend, let's say, $2500 instead of $4000, he will be damn happy with you.
There's no need to spend it all, with such amount you can get an awesome build with an i7 970 six core, a great motherboard, 6Gb or 12Gb RAM, and a decent GFX for gaming, like an HD6970 or a GTX580!
But really, there's no need to spend it all, and if you have no idea how to build your PC, I wouldn't risk it, does your son know how to build up PC's? If so, best gift you could do is buy the parts for him, and put them under his bed or something as a surprise, he'll have to build it him self, and he'll love it!
I must admit you are spoiling your kid a little bit, but honestly, it's your money, so you can do whatever you want with it, and he will be really happy with it!