He doesn't do things for money. Not beyond that one time for the short series before Rebirth.
And morality is personal. Just because he doesn't follow Bruce to a T doesn't mean he's a bad guy. Huntress doesn't either. Or Wonder Woman. I'm pretty sure there's a bunch of leaguers who don't, actually. What makes Jason gray isn't exactly his moral system, I think. It's that he's practical as hell, to the point of killing if the guys are dangerous enough to put people in peril (or, well, himself) or deal with bad guys (which, I've to point, is something other heroes have done before. Even Batman under certain writers).
I mean, the batfamily, all of them, operate outside the law. That's not exactly white.
Jason isn't Slade.
Edit: because Jason's practical, and emotional driven, he goes from anti-heroic (good guy, but not clear clean, and uses dubious methods. Would use people to reach an outcome but not endanger them to the point of hurt them. This would be John McClane from Die Hard, for example, even if he's pretty heroic imho), to anti-villanious (noble ends, but definitely bad methods: not only manipulates any kind of character no matter their alignment, he also is willed to hurt or even let them die, or kill them. This would be... let's see, I think Ozymandias from Watchmen fits the mold). This depends of how he feels about a subject. In a traditional D&D alignment chart, Jason is Chaotic Good or Chaotic Neutral depending on the situation at hand and his options and circumstances.