it happens for one of 2 reasons
1. your playing on a unranked server and you lose unlocks upon leaving the game
2. your in a ranked server but because your profile only updates when you leave the game if you crash or get disconnected you will lose that progress.
all crytek need to do to fix it is to make profiles update between rounds and it will fix the problem.