I set this problem aside and came back to it much later. I added a negate condition and it seems to do the trick:
<rule name="LowerCaseRule1" stopProcessing="false">
<match url="^((?=.*[A-Z]).*\.aspx)(.*)" ignoreCase="false" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{HTTP_URL}" matchType="Pattern" pattern="^([^A-Z]+\.aspx/)(.*)" ignoreCase="false" negate="true" />
</conditions>
<action type="Redirect" url="{ToLower:{R:1}}{R:2}" />
</rule>