I hear you on the late afternoon hunger. My workday goes from 9a to 6p and by 4:30 or so (sometimes earlier) I really feel like I need something if I'm going to make it through to dinner (and not gorge myself once I get home).
My solution has been to plan a high-fiber snack for that hour. Sometimes it's a cup of cold cereal with skim milk, sometimes one packet of instant oatmeal. Something for under 200 calories that will really fill me up and keep me satisfied for a couple of hours -- enough time to stay productive through the end of the day, get home and cook dinner without wanting to chew my own arm off before I make it to the table.
When I get bored with cereal I sometimes substitute a Pria bar or any kind of bar with >4 grams of fiber and 200 calories or less.
Note, these are all things you can keep in your desk drawer at work -- if that's the kind of job you have.
In the past I would sometimes have an apple, which I also found to be really filling, but in the past year or so I've developed an allergy to them so I can't do that anymore, unfortunately.