The number of matches that a player/manager card has can not be higher than 99. You can apply contract cards up to a maximum of 99 per player/manager. It is also not possible to apply contracts to players on loan.
Anyone that plays a match spends a contract, even if he started the match on the bench. That’s why you should avoid to make many substitutions.
It is advantageous to apply a contract card of the same category of the player card. However, it doesn’t need to be like that. For example: you can apply a bronze contract card to a gold player.
The big trick is not do not spend a lot of fifa coins on contracts but store managers in your club that give you a bonus up to 50%. Furthermore always study the relation price vs amount of matches. Sometimes a silver contract card may be the cheapest option for your gold player.