Can ping RPi, but can't SSH into it

Perhaps, as a last try you could try to catch the kernel messages from the phase between boot and the freeze activating persistent kernel logs and provide them here but no guarantee:

Unfortunately we need kernel messages from previous boots which are disabled by default with OSMC. To activate and provide such information, please, follow the steps below:

  1. login via SSH to the OSMC device, user osmc, password osmc
  2. cd /var/log
  3. sudo mkdir journal
  4. (from now, kernel messages are written to new directories for every boot)
  5. sudo shutdown -r now
  6. now wait for the issue/event which is the problem of this topic
  7. once it happens again and you are forced to reboot the OSMC device or it rebooted automatically, you’ve to identify the right kernel message log:
    7.a) login via SSH and invoke
    sudo journalctl --list-boots --no-pager
    7.b) the lines start with an index id like 0, -1, -2, etc. and contain the date and time when log was started
  8. upload the appropriate kernel log using
    sudo journalctl -k -b <identified index> --no-pager|paste-log
    (replace <identified index> with the real index id, see above)
  9. also, upload the appropriate full log using
    sudo journalctl -b <identified index> --no-pager|paste-log
    (replace <identified index> with the real index id, see above)
  10. provide the returned URLs here
  11. don’t forget to remove the created journal directory otherwise your system’s root file system gets filled
    11.a) login via SSH
    11.b )cd /var/log
    11.c) sudo rm -R -f journal && sudo reboot (repeat this line if you get a ‘cannot remove’ error till it works and your ssh connection gets lost by the reboot)