A method for improving the electronic spectrum of standard Density-Functional Theory (DFT) calculations (i.e., LDA or GGA approximations) is presented, and its application is discussed for the case of the copper phthalocyanine (CuPc) molecule. The method is based on a treatment of exchange and correlation in a many-body Hamiltonian, and it leads to easy-to-evaluate corrections to the DFT eigenvalues. Self-interaction is largely corrected, so that the modified energy levels do not suffer from spurious crossings, as often encountered for CuPc in DFT, and they remedy the standard underestimation of the gap. As a specific example we study the sequence and position of the CuPc molecular orbitals, which are wrongly calculated by standard DFT, and show that they are correctly reproduced after our corrections are included. The suggested method is fast and simple and, while not as accurate as hybrid or semiempirical functionals for molecular levels, it can be easily applied to any local-orbital DFT approach, improving on several important limitations of standard DFT methods.