Лично я бы выделил их и обработал бы ограничение в представлении.
Примерно так:
class Match(models.Model):
p1 = models.ForeignKey(Player , related_name='player1')
p2 = models.ForeignKey(Player ,related_name='player2')
class Game(models.Model):
match = models.ForeignKey(Match)
winner = models.ForeignKey(Player)
Затем укажите, какие игроки могут быть определены как Победители, в зависимости от матча. Это только мой взгляд.