I have a feeling this was written by a learner themselves. Which is cool, we all make mistakes. As stated by ling.ko, in addition to the issue of the formal/informal mix, the correct Korean sentence would not use 대부분 meaning 'mostly,' or 'usually,' but rather 거의 다 'almost all'. The current sentence -- 제 남동생은 밥을 대부분 먹었어요 -- would be more actually translated as "my little brother usually ate food."
There is no easy answer, and all native Korean speakers are in a constant process of gauging their fellows to figure out who has the higher position in a conversation. That said, I can give you a few tips.
Children can generally be spoken to informally, without -요 or words that indicate a respectful distance like 제. If the child is 17 and you are 20, for example, this is less clear cut and you can insult the younger person by being informal too quickly.
With people of the same age who are not close friends, speak formally until you either get close or the other person drops their formality. If they never do, you probably shouldn't either.
Anyone older than you, even by as much as months, should generally be spoken to respectfully, and you should probably (especially for people many years older) never drop your formality, even if and when they do. I've personally seen cases of couples in which one partner, being younger, will continue to speak with -요 etc., despite being as close as you can be, despite their partner speaking informally, simply because their partner is 5 or 10 years older. This is not seen as particularly strange. Nor is it strange for an older sister or brother to get instantly furious if their younger sibling uses their name rather than the respect conferring 오빠, 언니, 누나, etc.
Despite being of a younger age, someone in an organization with a higher professional position should not be spoken to informally, despite an age advantage. This is true vice versa.
An older person who speaks informally to you does not necessarily intend to convey positive familiarity. Sometimes this can appear very rude, and is seen by younger people as dismissive. For example, in a store, talking to a younger staff member with informal speech, regardless of age, is rude. You cannot force familiarity without a real time investment. Some older people do this in Korea (and everyone hates their guts).
Well, because it means both. So rice-heavy was the Korean diet that rice is synonymous with meals and food generally. This can create interpretation issues. Sometimes Korean speakers will say 밥 먹고 싶다, meaning not "I want to eat (a meal/food)," but "I want a rice-based dish (-- not something western like sandwiches, etc.) It can be frustrating to figure out specifically which is meant, and context is key.