I don't like any of the ideas, not because they are bad, but because they all feel like a leash, one tighter than another. IMO it must be done in a subtle way, my idea will be based on a fact that game is split into Acts. I suggest the XP needed to lvl up to increase as a slow progression during the act (like we have now), but to increase in huge leaps after reaching the level meant for the next Act. For example lets say your cap lvl for the area we have available now is 4 and you need 2000 XP to reach lvl 5. Now imaging having to gain 10000 XP instead. The amounts unprecedented for that area. But amounts that are an absolute norm for the next Act. It is somewhat similar to your second idea, which I think feels like a leash the least.
Upd: same of course can be done by respecting the 5e XP system and tweaking the numbers to more or less fit the source material. 2k and 10k are just for an example
Upd: that system would also let you to easily catch up by the time you reach the next Act
Acts / Areas, potato / poTAto. The baseline is you need a cap on XP gain. My only concern with act vs. areas is that you could do the content in a non linear way in BG3.
This actually is another problem: it would make sense to have some scaling of monster depending on what you have already achieved: e.g. if you go the risen road or swamp and arrive level 4 at the goblin camps we should see more monsters or same number but wearing more Armor having better spells.