One sensible reason to quit early is when the player is downed in the co-operative modes, after the teammates have announced that they won't be able to revive this player.
No, currently there is no system in place that will punish players for leaving a game before dying.
It's hard to find any information validating whether exp/kills that you had will be affected by leaving early, but one known penalty is that if you're in a squad and you die, and your team goes on to win the game, you only get the win counted if you're spectating the whole time, so leaving early could have the penalty of not having your win counted in this situation as stated by an Epic employee.
If you complete a challenge and then leave the game you won't get credit for completing the challenge. Other than that and the previously mentioned squad rule, there is no punishment