Joshua Freedman of Six Seconds, the Emotional Intelligence Network, says the simple answer is time.
Emotions are chemicals released in response to our interpretation of a specific trigger. It takes our brains about 1/4 second to identify the trigger, and about another 1/4 second to produce the chemicals. By the way, emotion chemicals are released throughout our bodies, not just in our brains, and they form a kind of feedback loop between our brains & bodies. They last for about six seconds.
Feelings happen as we begin to integrate the emotion, to think about it, to “let it soak in.” In English, we use “feel” for both physical and emotional sensation — we can say we physically feel cold, but we can also emotionally feel cold. This is a clue to the meaning of “feeling,” it’s something we sense. Feelings are more “cognitively saturated” as the emotion chemicals are processed in our brains & bodies. Feelings are often fueled by a mix of emotions, and last for longer than emotions.
Moods are more generalised. They’re not tied to a specific incident, but a collection of inputs. Mood is heavily influenced by our environment (weather, lighting, color, people around us), by our physiology (what we’ve been eating, how we’ve been exercising, if we have a cold or not, how well we slept), by our thinking (where we’re focusing attention), and by our current emotions. Moods can last minutes, hours, probably even days.