Maybe you're right by saying that it's good we have forced eating of good foods but I think it's too much. Currently hunger gain per fep is proportional to ceil(1/x), where x is ratio between your max_attribute and fep given by food. For example if I have 100 highest attribute and I eat 50Fep food this value would be 2 (I need to eat 2 pieces to gain stat so I gain 2 times hunger). If you graph this value you can see it grows very rapidly in shit food range. By changing hunger gain based on total fep of food and player's highest attribute we can control this behaviour. I've created simple graph in Desmos where you can play with setting parameter p and choosing how much you want shit food to be shit. When p=0 we have exactly the same as we have now, when p=1 we have system where bad food=good food always. Values between correspond to different scalings. You can play with it there https://www.desmos.com/calculator/f9lrfmpcag and play with different scaling p.
PS: On this graph you can see some artifacts caused by ceil function but this doesn't matter and it can be fixed.