The sin of the priests was also the sin of the people. It was they who brought their defective animals as if they could pass muster as a proper sacrifice.
Why does the deceiver hold back the best for himself and not give it to the Lord? Because he does not believe in the blessing of the Lord. In his mind, to give to the Lord is to lose what he gives. We do not give to God in the expectation that he will give back to us in kind. We trust him to give us something much more valuable than anything we can give to him. We value most of all his spiritual blessings: understanding, strength to fight the good fight of the faith, a heart that loves God and appreciates his kindness to us.