The two primary questions you should ask anytime you evaluate whether a token is necessary depends on the answer to both of these questions:
- Would the system function the same or better without a token at all.
- Would the system function the same or better with any other token (e.g., ETH).
For REP, the answer to the first question (can we just remove the token) the answer is no because the system needs a mechanism for rewarding people who behave in line with desired outcomes and are punished for behaving out of line with desired outcomes. In Augur, the desired outcome is that the reporter tells the truth during reporting and the undesirable outcome is that they lie during reporting. The token provides a mechanism such that users can put resources into escrow that they will get back later if they behave appropriately. Without a token, the system would become susceptible to Sybil attacks as reporters could just create a bunch of accounts and report and we would have no way to punish them.
The answer to the second is more complicated, but in almost all cases tokens associated with projects fail to meet this criteria. That is, you could just replace the token with ETH and the system would be better because there would be less friction since users presumably already have ETH to pay gas costs.
The thing about ETH (or any other token not tightly coupled with the dApp) is that a dApp cannot create it, nor can it control how it is used. With a dApp token, the dApp has the ability to create more of that token as necessary or constrain how that token is used. For Augur this is critical to the security model because we need a mechanism for rewarding good behavior and punishing bad behavior in some situations where there is not necessarily symmetry between good actors and bad actors. In particular, during the Forking process we need a way to encourage people to participate in the fork vote by taking some action. However, due to the nature of how the Oracle works we don't actually know who is lying and who is telling the truth, all we know is that people are making different choices. This means we can't take REP away from the liars and give it to the truth tellers. Instead, we create REP (out of thin air) in each universe that branches off of the fork, thereby increasing the total supply of rep across all universes. If we were to use ETH, this would not be possible.
This leads into the second part, ETH cannot be constrained. When a fork occurs and multiple universes spin up (each with a different definition of what is true) the system doesn't know which one is "right" and which is "wrong", it is all subjective from the point of view of the contracts. However, we want people to feel the impact of their decisions so when a fork occurs we create new REP tokens for each universe. When users move their tokens to a universe they believe in, those tokens now only work in that universe. If someone chooses to move their tokens to a universe that no one else wants to be a part of, then the value of their REP decreases to 0 because no one wants their crappy Universe XYZ REP. Everyone wants Universe ABC REP. If we were to use ETH as the token we couldn't constrain how it is used. People would be free to migrate their ETH to either universe and if it turns out they chose wrong and migrated their ETH to a universe no one wanted to play in, they could simply withdraw their ETH and deposit it in the other universe.
So, based on the above analysis, Augur both needs a token at all and that token cannot be replaced with any other token or ETH. Many dApps don't need a token at all and would work great without a token. Most dApps that do need a token to function would function just fine by replacing their token with ETH or any other token.