I think resource leveling is the sign of a bad project manager: why did you have over-allocated resources in your project in the first place if the initial project schedule wasn't balanced?
I don't think it should be avoided, in fact, it should be done, especially if you can't throw in more resources to absorb the over-allocation. Yes, it will lengthen the project, and maybe it will increase the costs (especially if over-time is not paid), but I don't see any other solution.
If you fail to level the resources in your project, then be prepared for the following:
- Low productivity because of the exhausted resources
- A much more lengthier project (lengthier than if you applied the leveling) than initially planned because of the low productivity
- Increased direct costs because of the project is just taking more time
- And, most importantly, your resources may reach a point where they may resign.