you seem to use the jsx format but the jiffy decoder, jsone is close on speed, pure erlang instead of a nif and allows to select multiple formats including the proplist format jsx uses or maps directly:
See: https://github.com/sile/jsone
Note: this is a half assed issue from reading half of the code, I might miss another