I think the main problem we see, is not so much NPEs, but the fact that many lawsuits involve SOFTWARE PATENTS.
Software patents simply should not exist, and do not exist in many countries.
Anyone who programs knows that there's 1) no way to stop and check every method to see if someone else has done it, and 2) plenty of ways for people to come up with the same ideas.
Almost every software patent lawsuit has nothing to do with outright copying, but instead is simply because someone derived the same method independently, but did not file for it.
Software patents quite simply favor big companies who can afford to submit lots of them, and some over and over again until the USPTO gives up and grants them.
I agree with you about software patents, but I also think that patents should only be available to entities that demonstrate that substantial financial investment was expended to create the item.
For example, drug companies, as much as I hate paying for a non-generic medicine, have a legitimate claim on preventing someone from coming in and copying them.
In your proceeding example, I'm not sure that I agree that we should provide someone who comes up with an idea, but does not have the ability to make it a reality protection. Does the idea for a new mousetrap really deserve the same protection as the formula for a drug that had to go through years of FDA approval?
I know people want to protect the little guy against powerful corporations, but I'm struggling with protecting ideas that come from people who lack the ability to bring them to fruition. I'm sure people will disagree with me, but this is the part of the system that has allowed patent trolls to get rich.