Hi, I'm completely new here; this is my first post so I may not be the most qualified to answer however here is my two pennies.
#1. It depends on how realistic you want the game to feel. I code everything in Java or C, C++... I don't use Unity to make games but you can build your own physics class in Unity via C# scripts and apply that to your objects that you want physics to be applied too. This means you apply physics to the object that you want to collide with things and be affected by forces. Forces like gravity, torque and transferring momentum. You will need to know vector math and trigonometry as well as have an understanding or circles; sin, cos, tan, the arctan2 function, PI, degrees to radians, etc. Not sure how much you know about these topics?
Unity basically does all of this for you via Rigid Body buy you may have to adjust your physics variables to get it to feel right. Increase mass to fall faster or in Project Settings under Physics you can change those variables to see if anything helps.
If I were to deal with 3D terrain and characters, I would approach it with the idea that the characters (walking people not vehicles) will always be standing strait, vertically along the Y, no matter what the terrain is doing. Depending on the angle of the terrain would determine if the character can walk on it or not. This way you can say that a hill is too steep to walk up and the character stops or slides back down. Not sure if that helps?
2. You can change the difficulty a few ways. Use different zombie types. Some move slower but cause more damage. Make zombies that jump or zig-zag or change their walking pattern randomly to make it hard to guess where they will be. Add obstacles that the player cant shoot through like trees or buildings. Just get creative and slowly introduce your difficulty over time so player just get used to it before they are presented with some new challenge.
3. Keep it Simple. I know this is said a million times but it really works here. Have a nice clean background with a feel for what the game is about. Have a clearly and cleanly written title without too much distraction. Animate it if possible but don't overdo it or use a 3D scene that reacts to the mouse movement slightly. I highly recommend writing or using a separate piece of music for the title. This adds a nice touch to the game.
Remelic