You kinda ask two questions, but they're not altogether disconnected, so I will do my best to answer both.
First off, the answer to "is behavior X professional" is almost always "it depends". A fairly useless statement in itself, perhaps, but it underlines the importance of not taking what strangers on the internet say as anything more than disconnected advice: even the most experienced people around here (I am not one of those) cannot possibly know your situation remotely as well as you know it.
If your immediate boss is okay with it, then that would indicate that in your case, it's fine. Whether this "letting you do it" is explicit or implicit could of course play a role here, but only you can judge the tone and context this permission has been given in.
Obviously I would put away or at the very least stop eating any food while someone else was actively at my desk / close by, doubly so if they express an opinion on it or are higher up in the food chain (pun intended) than me.
As for a quick suggestion on what to eat, I would go with cucumbers and/or carrots, cut into convenient "sticks". It's reasonably clean, healthy and as far as I know completely safe in terms of offending anyone. Whether that last bit is a factor for you I don't know, but I would recommend them for the first two in any case.
Avoid anything greasy or smelly or "noisy". Do keep a pack of hand towels at your desk and/or wash your hands regularly, for your own sake if nothing else.