I am running git daemon with the following command.
c:\\cygwin\\bin\\git daemon --reuseaddr --base-path=/cygdrive/S --export-all --verbose --enable=receive-pack
I had the same (similar?) problem with cygwin git. After one cygwin's update it stopped working properly with remote git repos, both on linux and cygwin.
At first it looked random and was hard to identify. Some commands worked, some failed. It looks like it was connected to the size of data being transferred.
I believe it's a client-side problem with SSH in cygwin as other git clients can connect normally. For me solution was to install msysgit and choose at install its own SSH client, not cygwin's. Putty should work as well, I guess.