I don't know of any books off-hand that address dealing with these non-ideal issues, but it sounds like you've already read about best practices and the "happy path" for project management. When stuck in a non-ideal situation (the glib answer would be to tell you to get out of that situation, but I understand that this isn't always possible), most of the success I've seen on these types of projects has always been to manage risk.
* Unable to implement all the required features by deadline
* Working on projects without sufficient funds
* Leading a project with a lot of fresh college-graduates
Some possible solutions to the particular cases you list:
- Manage expectations with the client, work towards an incremental release structure if possible. This is largely dependent on why the required features can't be implemented - because of feature creep from the customer, development time was longer than expected, etc. There are usually signs that things are slipping that can help to mitigate this, but when all else fails, try to reset expectations with the client.
- Not sufficient funds...is tough. I haven't run into that particular situation before, and have no good advice to offer.
- Lot of fresh college graduates - by this, I'm taken to mean inexperienced in general, and not something specific to fresh college grads. In those cases, although you want them to spin up quickly, there will more than likely be negative work produced as they train up. See if it is possible to task them with work that is smaller and less prone to slippage given their experience, while making sure it challenges and expands their skill set. It's a fine line to not overwhelm them, but make sure that they uptake everything as quickly as possible.
If I may ask, are you currently stuck in such a situation?