Can I gain muscle and lose fat just by doing body weight workouts?
Absolutely. The trick is just to be consistent.
The difference between body weight exercises and free weight exercises is your body weight. If you want to do 10 pullups but you weight 210 lbs, you're going to have a really hard time because you have so much extra weight. If you want to do 10 pullups and only weight 160 lbs you are going to find that its much easier because you have less weight to pullup. Compare that to lat pulldowns. If you weight 210 lbs you can still choose to do 10 lat pulldows but with only 90 lbs of weight. Having to use your own bodyweight could really force you to adjust your weight or to build enough muscle to compensate for your weight.
It is a fact that athletes who primarily use bodyweight exercises have low body fat because every extra pound is going to make a difference. If they gain an extra pound of fat its going to make your workout that much harder. If you gain muscle then you make the workout easier and you progress to a harder variation of the exercise.
Hope that helped.