This sounds to me like there is either a bad key for ssh, or the rootfs is indeed mounted readonly.
So:
- login via usb keyboard blindly
- remove the sshd server keys (rm -f /etc/ssh/ssh_host_*)
- start sshd (systemctl start sshd)
- Wait up to one minute, then see if the port is open.
If that does not work:
- remount / as rw (mount -o remount,rw /)
- repeat above.
Once you are in, check the cmdline (cat /proc/cmdline) and see if there is an 'ro' in there. If there is, we'll have to fix that.