Programming ATMega48 with Arduino Uno
You have an ATmega48p, judging from the signature, so use -p m48p to get rid of the signature error.

I don’t know whether that alone will fix things, but the ATmega328 has a different flash page size and doubtlessly other differences from the mega48, so ignoring the signature was unlikely to work (I think -F for anything but diagnostic purposes is a bad move).