Is it a good idea to add a reserved field to a large MySQL table?
I echo the "bad form" comment of @JohnM - design the thing properly, and if you have new requirements (or your design isn't perfect first time - unlikely I know :-) ), then choose to add new fields. Use JSON if it suits your clearly demonstrated requirements, otherwise stick with "normal" field types. 

I've seen too many systems where these "spare fields" get used for anything and everything and it ultimately becomes an undocumented, alphabet soup of an unmaintainable mess. 

"Hey Jimmy, what does field XYZ__001 do?" 

"I don't know, ask Billy" 

"But Billy's on holiday in the Algarve"

"Ooops!'