When representing the software developer we try and limit the indemnification much like you have indicated. When representing the software customer we like to have unlimited indemnification for patent and copyright (actually all IP) infringements because in reality the software company is in the best position to defend such a situation and is in the best position to know and control. That said, looking beyond just the indemnification there are a number of "tricks" that can be employed around the risk to minimize the risk for the software company, including having the opportunity to substitute non-infringing code and/or terminate the license, among other things. Looking at the indemnification provision only is not sufficient in trying to come up with an appropriate balance of risks that is acceptable to both parties.
Additional considerations need to be made as to what the software does, is capable of modification, etc. as that can also lead to infringement of third party IP rights, particularly if the software is being used in an unintended way.
I would be more than happy to look at the particular situation that you have, as well as delving into the full EULA to see what else could be done to make this less of a negotiation in future transactions.