Is there a way to tell wheather to use 費, 代 or 料 (also 金 and 賃) as a suffic, other than memorizing stuff? I have a very vague sense of their differences but when I try to guess I get it wrong more often than not.
費 -> consumption If you look at the reading of 費 or the Japanese definition, you will see 費える which mean "to be used up" (or "consumed"). From that, you get the main meaning which is more or less "expense".
代 -> change, period That one is a bit more complicated to explain. But there is a similar word in English: Exchange. Exchange come from the latin ex (out) and cambire (to change). And it's just the act of giving and receiving. 代金 is literally the same except that it's specific to things that you exchange for money. And it means the money that you use for that. I also just noticed another use with 上代 which can mean (nominal) retail price. I didn't found a japanese definition which specifically mean "(nominal) retail price" but if the translation is correct, then it probably use the "period" meaning. "Nominal" here means at "a point of time" and the 上 kanji is sometimes used to mean "from that period" or "at a certain period" (literally "on a period" but it's weird in english).
料 -> to measure The main meaning of 料 is just "to measure". And by extension, you get "measured prices" or "measured/caculated ingredients". So it carry the nuance of prices/fee/etc that have been calculated.
金 -> metal, gold Initially, its main meaning just mean metal and then later "money/etc.". In a word, you will get the nuance from the other part of the word.
賃 -> to rent, hire Money that you use to rend or hire something/someone.
Keep in mind that there are exception though. Also don't try "to decide" which one you should use. Just try to remember each word because it's a bit random. At the same time, it will be much easier later when you will have a better grasp on enough kanji.