Change/Create Public variables in runtime

Yes its possible within Blueprints and within C++. You can create variables to hold things like the Mode, FOV, etc, and then set those values through the blueprint whenever (in response to the player hitting a volume, changing an option, etc).

You should go ahead and read through these tutorials to get a better understand of variables and functions in Blueprints:

https://docs.unrealengine.com/latest/INT/Engine/Blueprints/UserGuide/Variables/index.html

and this tutorial takes you through actually modifying a Camera using blueprints:

https://docs.unrealengine.com/latest/INT/Gameplay/HowTo/UsingCameras/Blueprints/index.html