Hi,
I have been working in Java for the last 4 years. I have searched about doing what you desire, and found out it is impossible to do such thing in Java (since it is made to be portable and it would require native methods). But there are more chances to be possible in C#, since it is produced by Microsoft (and the applications would be Windows only specific).
I am not sure I can succeed this, but I can try (the listening to mouse events outside of the application window is the difficult part, if I manage that the rest is easy). What I ask is this: if you have a freelancer that bid on your project and already knows how to do this then go with him. But if you don't, I can try doing the difficult part (no hiring yet needed), and if I succeed (might take a bunch of hours to a day), then you can hire me (so we don't risk granting a project that might not be completed)
So if you would like, contact me, and I will start exploring this.
Cheers!