Generally I like the idea. We face too many issues with reading json files from the web module and injecting it in the core etc.
I would also vote for having a common interface, so that we can switch the implementation to a different library if we might see issues with Jackson in future.
Furthermore I would like to consider keeping the Json in it’s own module but having a dependency from the core to the json module. This would help a bit with keeping the json logic out of the core and maybe make it easier for others to switch to a different json client, without changing code of the core.