After more digging and talking to the guy running the REST server, apparently I was making this way more difficult than it needed to be.
In the end, all I needed was a dictionary of key/value pairs, the key being the property name and the value being some data of the type specified in the schema. Luckily, Json.NET converts those into JSON perfectly.