So, when can I appropriately use the "System - > Compare two values" condition?
This one is used to compare... values! But not good for multiple instances of the same object.
Let's say you want to compare some kind of calculation, like "score * 10 > 1000", then you use "Compare two values"
See System Conditions
What is the difference between "Overlapping" and "Colliding"? Some objects doesn't have the "colliding with another object" condition?
Overlapping is a repeating action, so it will be tested every tick. Something like "player overlapping lava + every 1 second" will fire every second while the player is on lava.
Colliding is a one time trigger. So you can use like "bomb collides with ground > play sound" and the sound will only play once (but can play again if it collides another time)
Sometimes "On collision with another object" disappears because you can only have one trigger event on a condition (trigger events are represented by a green arrow before them)
See Sprite
How do you make a "spawned" (or even those not spawned) object's sprite be always "over another object's sprite?
You can have "move to top" or "move to object" on every tick
See Common actions