As Sergey Slepov in his answer correctly noted, the subject of the first sentence is еда which is feminine so the predicate нужна agrees with the subject in the feminine. The things are quite different in the second sentence which is impersonal. The predicate of the 2nd sentence is нужно which means “[it is] needed”, the subject is implicit, мне is the Dative indirect object (“for whom?”), больше еды is another object where еды is in Genitive as it always is the case after больше.
The reason why нужно is in the Neuter gender is because it (as agreeable predicates always do) agrees in gender with the subject which is оно despite the fact that the subject is omitted. There are tons of similar constructions in Russian:
Плохо, когда холодно. — It's bad when it's cold.
Мне весело, если вокруг всем хорошо. — I'm happy if everyone around is alright.
In languages with cases, like Russian or Latin, first you've got to find the predicate of the sentence. Then you look for the Nominative subject (it can well be implicit, omitted in Russian, then you assume the subject is *оно ‘it’). Then look for objects, the direct object is in the Accusative case.
Больше еды cannot be the subject of the 2nd sentence, since it is in the Genitive case (Partitive Genitive, to be more specific), consider substituting it with another noun phrase:
Мне нужно денег.
Мне нужно воды.
Мне нужно дружеского взаимопонимания.