Check out SyncThing. Although you mentioned Linux, if you (or anyone who will be reading this) will need to run it on a Windows machine, use this packaging of it, which make things much easier to setup: SyncTrayzor.
I believe it will check all of your boxes:
#1 syncs only blocks that have changed.
#2 Multi-platform, basically runs on everything mobile, pc ...