If you got the time hitting the gym 5 days a week is fine. A lot of time it's easier to know that you're just working one muscle group at a time, so you can give your whole focus on just doing chest, or just doing back, where as if you did it 3 times a week you would have to combine musclegroups on the same day (chest, triceps, shoulders perhaps) and so on. Also I take it if you were to do 3 times a week you couldn't work in with this guy the same you're doing now since you might not do the same kinda work out so for that reason too I would stick to doing 5 days since it's easier to have someone with you that has a little experience and it helps with motivation going to the gym in the first place etc. Also I assume you take the weekend off completely which is a good thing.
Doing cardio afterwards is probably fine as long as it's not too demanding on the body and takes too long, if it's too demanding on the body it might hinder muscle growth, and if it takes too long it might keep you from eating after training (you should try eating less than an hour after working out, some would say even earlier)
You might wanna skip doing cardio after your leg day, depending on how you feel...
Losing fat and gain muscle at the same time is tough, some would say it cant be done... (you need more calories to put on muscle, less calories to lose weight) you might need to pick either one after a while and either do more cardio and check your diet to lose weight, or less cardio and more calories to gain muscle...
as for diet, it is important but i wouldnt go fanatic about it, you might wanna cut out or at least limit the obvious stuff that isnt doing your body too much good, like if you're drinking a lot of soda or excessive amounts of wrong type of fats etc... i dont think supplements would do you much good as long as you eat regular food.