I am in an almost identical boat as you. I just received a "raise" and a "promotion," but for my job title, I make about $45k less per annum then the average nationally, $35k less than peers in my region. Similarly, I am at the very end of a project that, within my organization, only I can do. I promised I would see this project through in Jan 2010. If I made a promise about finishing the project, why would I have spent the past year looking for new positions? When I promised that I would see the project through, my project schedule had me finishing in 6 months. But then my managers decided to step in and "help."
I don't feel that, by looking for new positions, I have been unethical in the slightest. When you sign on to do a project and guarantee that you won't leave until said project is complete, you take on a whole bunch of career risk that wouldn't otherwise exist. This career risk has the potential to damage you. The incompetence of my managers stretched the project out from Jan 2010 to July 2012--much more time than I had been counting on.
I wouldn't worry too much about references from the organization, either. Never once have I listed somebody as a reference that gave me a bad reference. When a future recruiter calls your current organization, due to the potential for law suits the only confirm the person's employment, dates of employment, and your salary (source).