I thought J-20 was similar in size and might even be a little smaller than some of the Flankers... Might be slightly smaller than J-15, but should be comparable?
The physical dimensions of the J20 is indeed slightly smaller than the J15, but I would wager the J20 has a lot more internal volume than the Flanker. Now the J20 airframe may actually weight a lot less than the Flanker's because of advancements in manufacturing technology, things like 3D printing of titanium support beams that can save up to 40% of the weight compared to traditional casting etc.
However, you don't take off on empty of minimal loads, and I think there is a very good chance that a J20 fully loaded with fuel and munitions may well be a lot heavier than a similarly loaded J15.
We have seen J20s do short takes offs, but I seriously doubt the J20 was anywhere close to being fully loaded at the time. And let's not forget that a carrier J20 would need additional structural supports that would make the plane even heavier.
It may not be worth while to make a naval J20 without CATOBAR carriers if the naval J20 is going to have major load restrictions in order to take off using the ski jump.
While we are on to practicalities, there is the aforementioned difficulties and weight gain associated with making a land based fighter carrier capable. On top of that, we have space issues. The J15 is already as big as carrier fighters get these days, and the J20 is not that much smaller. If you are using J15s and J20s, you are going to have a significantly smaller air wing than comparable sized carriers.
Generally, its ok to have a big carrier fighter paired with a medium sized one, but two heavyweights serving together has never really been done before.
On top of that, you are going to have combat persistent issues with stealth fighters because they are only really worth if it you limited them to internal carriage only, but then that will greatly limit the number of missiles your air wing can loft. With only 4 BVRAAMs and 2 WVRAAMs, a J20 on internal carriage has half the warload of a J15 fully loaded for AA.
If you go down from 24 J15s to 12 J15s and 12 J20Hs, you are in effect loosing a quarter of you air-to-air firepower and up to half of your strike firepower. That is a big loss, and with an already small air wing, you run a serious risk of being simply overwhelmed if the enemy launch a saturation attack on your carrier.
The small number of naval J20s that can be embarked on a carrier will also limited the production run, spiking unit costs. On top of that, a naval J20 will pretty much have to wait till the Air Force version is complete before development starts, which will put its service entry date way off into the future. Although that may actually work to the naval J20's favour because that would make CATOBAR super carriers more likely to be fielded by the PLAN then.
Is it possible to make a carrier capable J20? Sure, but I am dubious if that makes sense practical or financial sense to do so when there is a far more suitable candidate in the form of the J31.
I feel I have drifted off topic somewhat, but something SAC can consider is to make the engine compartment modular on the J31 to offer alternative engine options. Imagine a J31 with M88-3s to EJ2000s!
Such a carrier capable bird, optimised for air combat with super cruise and typical Chinese pricing and full buyer customisation options for radar weapons and avionics may even tempt the likes of the French and British Royal navies if not for the political concerns.