The patent license in the Apache License 2 is very limited, so you do not lose all rights – although enforcing these rights gets more difficult. Let's take your quote apart in more detail.
What do you authorize via the patent license?
[…] patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work […]
The license is given for making, using, and transferring the Work in question. This license is bound to the Work, not to the users.
If someone uses your software but creates a separate work that depends on your patents, they would need a separate patent license from you. In practice this is unlikely to happen, because they could just use the Apache-2 licensed software instead – which allows use in proprietary software systems, under comparatively simple requirements like keeping notices intact.
The patent license also extends to derivative works.
But whether a port to a different language would be a derivative or separate work is not always clear. A fairly direct translation would probably be derivative, an independent reimplementation likely not. This ultimately depends on your jurisdiction.
Which claims of your patent are you licensing?
[…] where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) […]
You are not licensing all claims of your patent, but only those that would be infringed by your contribution if you had not given this license. The result is that you can never inject a patent infringement for your own patents into an Apache-2 licensed project. This protects the project from malicious contributions or “submarine patents”. If other people make a contribution to the project where their contribution would depend on your patents, they cannot provide a patent license for that.
Let's say you have two patents A and B, or one patent with two claims A and B. You make a contribution that would infringe on A and therefore includes a patent license for A. Later, someone else makes a contribution that infringes on B. Can you enforce this patent infringement of B? Yes, you never issued a license for that, although it would certainly look weird.
What happens if you start patent litigation against a contributor?
You are allowed to enforce your patents, but this will terminate any patent license you received through the Apache-2 licensed software:
If You institute patent litigation against any entity […] alleging that the Work or a Contribution [constitutes] patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.
In practice, if you need to use the software that you contributed to, you can't sue for patent violations in that software. So this does effectively weaken your patents. But again: this is about the Work, not about persons.
Let's assume you made a contribution with a license for your patent A, and another person made a contribution with a license for their patent B. A third person makes a contribution to the same software that infringes on any of your patents. If you sue, you lose the license for patent B that you received through the Apache 2 license. If you continue to use, distribute, or create derivative works of that software, you are risking to be sued yourself for violation of the patent B.
But if you contributed you are no worse off than with a software that you didn't contribute to. Let's assume an unrelated Apache-2 licensed software where someone made a contribution that infringes on your patent A, and someone made a contribution with a license for their patent B. Again, if you sue you lose the license through the Apache-2 license for patent B for use with that work. This doesn't affect any other licenses you may have for patent B, such as through an Apache-2 license for a different work.
When does it make sense to issue a patent license as part of an Apache 2 contribution?
If you want to unambiguously keep all rights to the patent you should not issue such a license. The patent grant in the Apache 2 license does make enforcement more difficult.
However, if you are more interested in encouraging use of one standard implementation of the patented technique, then this patent clause can discourage alternative implementations.
What should you consider when issuing a patent license as part of an Apache 2 contribution?
To avoid any confusion make it clear that you are issuing a patent license as part of this contribution, and which patent claim this contribution intends to license. It might make sense to include this information in a NOTICE file which all downstream users of that contribution must preserve.