Are Christians supposed to forgive non-Christians? And if so, why? If God doesn’t forgive non-Christians, why would he expect Christians to? Does God expect humans to be more forgiving than himself? If Christians are not supposed to forgive non-Christians, because God doesn’t, how does this integrate with Jesus’ teaching that we need to love our enemies? How can you love an enemy without forgiving them?

The answer is yes. But our forgiving is not at all like God's.

God is willing to forgive non-Christians, through Jesus. But they must be willing to be forgiven, open to the truth. God is full of mercy. But our forgiving our fellow man is not the same as God forgiving one of us. We are two sinners, one hurting the other. God is sinless.  Even if we forgive our brother who hurts us, that does not mean that God forgives him. 

Human forgiveness is purely relational: we do not actually REMOVE the guilt of his sin, only the ill feelings we have. Divine forgiveness is purely moral, and truly ontological: our actual guilt is removed.

God doesn't take our offenses "personally." He cannot lightly forgive because sin is against his nature. Sin is antithetical to God's nature (Habakkuk 1:13 etc). For example, hot water cannot "forgive" an ice cube. The ice cube will melt. It will not be preserved. This is not possible. It's nothing personal! But God is pure God, and hence antithetical to evil.

Christians are supposed to forgive non-Christians. Yet this does not wipe away their sin; it only removes a block between us and them.