Uncomment the dri module in your xorg.conf, it isn't needed by the nvidia-drivers and if used, it will b0rk your X ;-)
As for your edid's problem: u can try to add this to xorg.conf in section "card0"
Option "UseEdidFreqs" "0" # This disables the use of edid's defined by your monitor
Option "IgnoreEDID" "1" # This will instruct X to ignore Edid's defined by your monitor and solely use the ranges specified in your xorg.conf
Most likely, the last option will be the most effective, cause it has been implemented by nvidia to control monitors, which lie about their Edid's...
Here's the official section bout these 2 options from the nvidia readme:
Option "UseEdidFreqs" "boolean"
This option causes the X server to use the HorizSync
and VertRefresh ranges given in a display device's EDID,
if any. EDID provided range information will override
the HorizSync and VertRefresh ranges specified in the
Monitor section. If a display device does not provide an
EDID, or the EDID does not specify an hsync or vrefresh
range, then the X server will default to the HorizSync
and VertRefresh ranges specified in the Monitor section.
Option "IgnoreEDID" "boolean"
Disable probing of EDID (Extended Display Identification
Data) from your monitor. Requested modes are compared
against values gotten from your monitor EDIDs (if any)
during mode validation. Some monitors are known to lie
about their own capabilities. Ignoring the values that
the monitor gives may help get a certain mode validated.
On the other hand, this may be dangerous if you do not
know what you are doing. Default: Use EDIDs.