Hey,
The distinction between "bom" and "bem" is pretty clear; the former is an adjective (good), while the latter is an adverb (well). Their distinction is solely dependent on wether the adverb needs to be applied or the adjective.
Examples:
Ele é um bom homem, mas nem sempre faz tudo bem. [He's a good man, but he doesn't always do things well.]
The difference between "tudo" and "todo" is slightly more subtle and often leads to mistakes. Their respective (closest to my knowledge) English translations are "everything" and "all"/"each"/"every".
I'm not too familiar with the grammatical explanation for this, so I may be a tad off, but "tudo" is used for unspecified objects, so it can't precede nouns, while "todo" can.
Examples:
Gosto de todos os meus colegas. [I like all of my colleagues.]
Adorava comprar toda a roupa em exposição. [I'd love to buy all the clothes in exhibition.]
---Note both examples use defined objects: colleagues, clothes.
Adorava poder comprar tudo o que está à venda. [I'd love to buy everything for sale.]
Ele nem sempre faz tudo bem. [He doesn't always do everything right.]
---In this case there are no specified objects; they're kept undefined.
Hope this helped.