Hi Gidi,
I think the problem here is Cygwin and how it has always been under supported in Eclipse.
The issue is about Eclipse and GDB seeing different file systems. i.e. Eclipse sees c:\dir\file.c but Cygwin sees /cygrdive/c/dir/file.c.
The way I recommend you resolve this problem is to add a "Path Mapping" of /cygdrive/c to c:\. You can do that for all launch configurations in Preferences -> C/C++ -> Debug -> Source Lookup Path and press Add button, choose "Path Mapping" and give it a name that suite you. Then enter /cygdrive/c in Compilation path and C: in Local file system path.
I think in the past there was effort to handle this automatically, and perhaps it has degraded over time. I know most vendors who ship products based on CDT use Mingw compiled toolchains that "just work" as both CDT and GDB then understand the same paths.
As for which GDB goes with CDT there should be something about that somewhere, but generally Eclipse CDT works with GDB 6.8 and above for all basic debugging features. GDB 7.5 and above according to what CDT tests against - but the automated tests run only on Linux at the moment.
I hope that helps a little.
Jonah