What I would do, so far as the fuses go, is use avrdude from the command line. avrdude was installed as part of the Arduino IDE so you'll find it somewhere on your system. You can use the terminal mode to see how the fuses are currently programmed. It looks like "burn bootloader" from the Arduino IDE actually does program the fuses, though, so that may not be the problem. It wouldn't hurt to double-check, however.
Are you sure you have the right pinout for the USB connector? It looks like D+ and D- might be swapped. D- is usually shown as pin 2 and D+ is pin 3. Of course pin numbers are completely arbitrary so it may be fine.