A leaderboard cannot be reset daily. However, you may query for results during the last day / week / etc. This is explained here:
You may show data filtered by possible properties, such as timeScope:
You set properties on the GKLeaderboard object to filter which scores are returned to your game, then tell the object to load the scores. Table 4-5 Properties that affect the leaderboard data query
Property - Effect
playerScope - You can choose whether to restrict the search to the local player’s friends or to find scores from any player. Optionally, you can also initialize a leaderboard object to search for scores for a specific group of players that you supply.
timeScope - You can choose to filter based on when the score was earned.
...
By re-reading your question, I think timeScope will do the trick for you!