These terms get used a lot in referring to gentiles. What are the precise differences, if any, between these different categories? Just for clarity, Akum is an abbreviation of the phrase 'Eved Kochavim v'Mazalot'. Please give specific sources for any definitions mentioned.
The definition of a ger toshav is discussed in Avodah Zarah 64b. The Gemara provides several definitions of what the term refers to; in common parlance it refers to a non-Jew who accepts upon himself to uphold the Seven Noahide Commandments - not to eat a limb from a live animal, not to "bless" Hashem, not to steal, to have a proper court system, not to murder, not to commit idolatry, and not to commit adultery.
A Ben Noach literally means "son of Noach" and refers to all non-Jews. Though technically it refers to Jews as well, as everyone is descended from Noach, the term is used colloquially to refer just to non-Jews.
A Nochri is the only term on the list that refers to all non-Jews and only non-Jews. The term literally means "Gentile."
You left off Goy from your list. Literally translated as nation, colloquially this one also refers to any and all non-Jews.