Should a table be split if only a particular column gets updates?
It depends.

Will you be accessing (SELECTing) only the 'static' data frequently?  With complex WHERE clauses?  If so, "vertical partitioning" is beneficial.  It would keep the SELECTs from interfering with the UPDATEs.

Will the JSON columns be large, and the 'static' columns be relatively small?  If so, that adds to the argument for vertical partitioning.

When you are ready to update a JSON field, do you have the PRIMARY KEY in hand?  Searching around for which row to change may interfere with other UPDATEs.

Sorry there is no straightforward answer; "your mileage may vary".

Rephrasing

(This discussion applies to any InnoDB table with "big" fields -- TEXT/BLOB/etc.)

If you usually access the big field (JSON, in your case) --> 1 table
If you often don't look at the big field --> 2 tables
If you usually do a "point query" (ie, you have the id of the row and don't need to search for it) --> 1 table
If you often check lots of rows to find the one (or few) to fetch/update --> 2 tables
But... If most rows are bigger than 8KB (and you are using InnoDB), then, because of the way 'large' columns are stored off-block, there is not much advantage for 2 tables.