I think it's normal. Everyone with Body Odor (or not) have their smell changed by food. The sources of smell are: food, chemicals and toxins. I listed all the possible causes according to my own experience/searches, a lot of them are related and one can cause many of them:
Junk food, food with chemicals, food with toxins, environment with chemicals, bad digestion of food because of a digestive organ weakness, because of a lack of a vitamin/mineral because you eat too much/junk food/inappopriate food with something you shouldn't, maybe lactose, gluten etc, unbalanced gut flora, the body unable to flush the toxins you give it, the body that produces too many toxins (parasite), unbalanced pH that causes parasites, unbalanced hormons especially thyroid hormons, problem with blood quality, etc.
You should definitively avoid fried food, as anyone.
Stay away from potato chips, fried chicken, hamburgers.
Soda is chemical and very sugary, so no wonder it smells. Chocolate is sugary too.
Acoholic beverages makes your liver work too hard, so no wonder. Stay away from them.
Cheese: maybe lactose? Lactose is a sugar, and it's very hard to digest.
Eggs: yes, I think it's fermentating in the gut, when we eat eggs, the smell of the fart is very bad, as with cabbage, beans, etc.
Onions and garlic: that's normal, but I think you should keep them in your diet, they are so healthy, and helps getting rid of bad bugs and worls in the gut.
Nuts: eat them raw, without added oil or salt, they are healthy, but your not the only one who notice a stronger smell when you eat them. They are rich in magnesium and other minerals, it's healthy and we need them.
Try to cut out one after another, or all together if you can, lactose, gluten, sugar, and see which one give you the more problems. Also fasting is a very good cleaning, and you need cleaning from inside. I don't think you would have Body Odor when fasting. Try it.