I would be surprised, if there's not some todo app with a JSON file sync, but I'm not aware of one.
However, there's two different plaintext formats, which are more-or-less standardized and you can find tooling for, both as apps and CLIs.
The first format is todo.txt: http://todotxt.org
It's extremely simple and as a result, a big ecosystem exists for it.
One limitation of todo.txt, though, which was a dealbreaker for me: You can't really note down additional context for your todos. More specifically, each todo is exactly one line of text.
So, personally, I'm using the OrgMode format instead: https://orgmode.org
It originates from what's essentially an Emacs plugin, but the basic task syntax can easily be typed in any text editor. The format has tons of features, but you don't have to make use of them.
Another major selling point is that Orgzly is a really good app. I don't know the syntax for scheduling a reminder, I just do that in Orgzly.
Well, and personally, I'm using Syncthing to synchronize the files.