The killing of Zimri was a mitzvoh in relation to Hashem. The kindness of removing Hashem's anger from upon the bnei Yisroel was between man and man. For this he deserves reward in this world. Pirkei d'Rebbi Eliezer ch. 29 and ch.
Many answers abound.
Possibly the following may be added to the list. Since Pinchos would kill Zimri in the future, Hashem did not allow him to become a Kohein when the children of Aharon became Kohanim. Only after killing Zimri as a non-Kohein was he inaugurated into priesthood. A question can be raised on this line of thinking. If one who is already a Kohein loses his right to serve, one who is not yet a Kohein should surely not be able to serve.