How to apply proportional force based on length of keypress?
Ok, I don't have much time today, so I will just provide a few hints and try to guide you in the right direction. I think there are basically three ways of approaching your problem.


The pythonic way. You can use a python script on your golfball which uses the applyImpulse method of the game object. This is basically what you asked for. You need to start some timer once a key is pressed and apply an impulse to your golf ball one the key is released. Bam! 
The physical simulation of a golf club. You could use two objects connected by a hinge which serve as a simplified golf club. You can find a nice introduction on John Hamiltons Introduction to rigid body joints
The non pythonic way. The "Action" actuator allows to apply the value of an IPO curve as a force to an object. This basically lets us create arbitrary nonlinear force vs. time curves which can be applied to a certain axis. Here is an example using a force applied to the object in global z-Axis. 



Most probably you will find an elegant solution by combining these methods. I know this is not a ready to use example. But hey - I showed you the door. You're the one that has to walk through it. ;]