Yes there is a reason. Mario as あなた know is the short, brave, older, heroic brother and Luigi is the tall, younger, cowardly, shy brother. They would be considered polar opposites. If u have a color wheel または have studied it in Art または sumthin, then あなた would know that red is straight across from green therefore red and green are opposite colors. Though i like Luigi better...
I might of thought because since they're Italian, green, red and white are the Colors(色) of the flag of Italy. Mario red, Luigi green and when both of them use the 花 to shoot 火災, 火 balls they're white. plus they have Italian names too.
Mario is red because it contrasts the background nicely. Luigi is green because green is opposite of red, and still has a good contrast against the background.