It could just be the culture at the company that I work for, but when my manager tells me that I'm doing great work, I'm a top contributer, etc. but that the penny-pinching accountants won't let me have a raise then I do take that personally. I'm trying to move up but the company doesn't seem to want to let me. This isn't the way to turn me into an "alumni". Instead I'm going to be bitter at the company that gives lip service to career growth but isn't willing to put its money where its mouth is.
If a company wants employees to say for ten or more years, like they claim, then they need to be willing to pay up. Otherwise I would prefer the "you will be here for three years, then move on" talk on my starting day.
I'm trying to move up but the company doesn't seem to want to let me.
Well, here we have a situation that doesn't fit the up-or-out model perfectly: Companies where, for a certain class of top performers, there is no "up", only "out". These companies are not interested in grooming their IT staff for management, or bigger roles, or anything else. Their behavior suggests that they're really just hiring a stream of IT consultants on two-to-three-year terms... but they use full-time employees instead, possibly because they're cheaper, possibly because of employment law, and possibly because there are limits to how much power you can exert over a consultant.
It sounds like you might need to listen to your company's actions, rather than just their words. Words are very inexpensive. :)
By not giving substantial raises, you're encouraging the best people to work at your company for a while and then quit. You're even giving them a good face-saving excuse to quit. It's far more amicable for an employee to say "I'm leaving because I can get another $25 an hour across the street" than "I'm leaving because I've been here for three years, I've done all I can for you, and now our relationship has become dysfunctional, and you never listen to me, and I'm bored to death". Similarly, it's easier to tell an employee "I'm afraid we have no budget for a big raise this year -- curse our penny-pinching accountants!" than "You've been around for four years, your value to the company is static or declining, and we all just kind of wish you would leave".
Which of these scenarios is more likely to produce happy "alumni" -- former employees who might be willing to network with you, refer other talented people to you, or even come back and work for your company again (presumably at a somewhat higher rate)?
If you expect your best employees to either move up or move out, pay raises are irrational. If you offer large raises to everyone that stays in the same position for five years, you're basically pouring more money into the metaphorical "dead sea". (This assumes, of course, that the "dead sea" model actually applies to your company and your industry. The model should be taken with a grain of salt...)