Set fuse to use internal clock - "target doesn't answer"

Glad to see you have figured it out.

About your USBasp programmer, do you still get this output from avrdude?

avrdude: auto set sck period (because given equals null)
avrdude: warning: cannot set sck period. please check for usbasp firmware update.

If so, then you are not running the USBasp 11-05-28 firmware. This means the USBasp programmer does not support the -B option. But it doesn't mean there is an actual problem and you don't need to update if it's working well for you. It could be that your USBasp firmware supports a built in auto-clock instead of the -B option. I have several of these types of programmers and they run fine. You can just ignore that warning.

The J3 hardware jumper is not totally obsolete. In some cases where you can't use the avrdude -B option, like from the IDE or some other software, then having a hardware jumper can be very helpful. The caveat is that not all USBasp firmwares support the J3 option. I do know that the 11-05=28 (and 2009-02-28) firmwares do support the J3 option, in addition to supporting the -B option. Older firmwares (2006 and older) only support the J3 option.