FWIW, I had the exact same problem. This was under Cygwin 1.5 (not 1.7) and Win7 (build 7600 enterprise release). The OpenSSH server worked for a few days and then stopped working with similar symptoms to you. I eventually got it working again. After working for a couple more days, it broke again. Nevertheless, this is what I did to make it work after not working. I realize some of this may be unnecessary or even counterproductive. I don't know enough Cygwin and/or Windows to say what made a difference so I'm just telling you what I did in the off chance that it helps somebody find the real problem.
1. Stop and delete the service:
cygrunsrv --stop sshd
cygrunsrv --remove sshd
2. Remove the cyg_server user via Windows.
3. Restart system.
4. From bash, run ssh-host-config to recreate user and sshd service. Answer yes to everything except allow cyg_server to be the name of the user.
5. Manually set the password for the cyg_server user from Cygwin. Make it 10 characters with only alphanumeric (i.e. "abcDEF1234" - not my password obviously).
passwd cygserver
6. Go into Services, properties of the sshd service, Log On tab. Manually set that to the stored log on password for the service.
7. Close bash if it's still open.
8. Start-->Run-->"ash" and run the rebaseall command.
9. From the command prompt, run net start sshd.
Please forgive the superfluous details. Good luck!
Alex