I'm wondering if there are any linguistic reasons or rules that can be applied to find out which to use, or do I just need to memorize them individually?
Well, all the Japanese counters have some irregularities. In this case, the standard counter for minutes is ふん, but in some numbers it changes.
1: いっぷん 2: にふん 3: さんぷん 4: よんぷん 5: ごふん 6: ろっぷん 7: ななふん 8: はっぷん 9: きゅうふん 10: じゅっぷん
There is a rule when saying 'x past the hour': if x is 10, 20, 30, 40 or 50 you say '~じゅっぷん' not '~じゅうふん'.
For example 15:10 is じゅうごじじゅっぷん and 15:20 is じゅうごじにじゅっぷん whilst 15:15 is じゅうごじじゅうごふん.