There are subtle differences in meaning.
"I“I earn $500 [each](https://www.google.com/search?q=each&tbs=dfn:1 ""each" at Google Dictionary")each month"month” says that each month, considered separately, the sum of your receipts is $500. This can mean that the sum equals $500 exactly. But it can also mean $500 at least. For example, you can write:
I earn $500 each month. During peak months, I earn as much as $800.
"I earn $500 [per](https://www.google.com/search?q=per&tbs=dfn:1 ""per" at Google Dictionary")per month"month” express a rate, or linear relationship, between time and money. It means that over n months, the sum of your receipts is n × $500. Again, this can mean that the monthly sum equals $500 exactly. But it can also mean $500 on average. For example, you can write:
I earn $500 per month. This is considering the year as a whole. The summer months are slower, but I always make it up over the holidays.