Rule of thumb is to get an amp that puts out between 10-20% more power than your speakers, so that your amp will not be driven to max volume when your speakers reach max volume.
The left over power (10-20%) is called headroom. This way your amp will run cool and deliver cleanly.
So to answer your question;
"is it bad to overpower a sub by 100 wrms from the amp?"
The answer is yes.
There is no set amount as to what you should go over. Its a percentage. It is a percentage because it fits better this way.
By the way;
Headroom is intended to safekeep the amp. It is not intended to overpush your speakers into distortion, even if it gets louder.
400 watts is too much, but since you may not find an amp that fits your setup, you may have to just WATCH your volume button. Just dont go past the point where you overpush your subs into overextention or distortion.
you can safely run a 1000w amp on a 100w speaker if you just make an adjustment with the gain. 400w driving a 300w speaker will only be trouble if you want it to be.
To do it the "right" way you have to download some test tones, burn them to disk, and measure the voltage (with a DMM) at the amp outputs while adjusting the gain. Takes a few minutes of prep, and a few minutes to do.
But 300/400 isn't a major issue. If you'd rather you can probably set it by ear and be fine. Just turn the gain way down, set the LPF to around 80 hz, put in a CD you like that has some bass and turn the HU to 3/4 volume (or as high as you would ever have it). Slowly increase the gain until the subs don't sound right, then back it off a few degrees.
That's the easiest way to do it. Always be aware if you hear the subs sounding unusual and turn the volume down.
BTW - are you running 400w to EACH sub, or to BOTH (200w a piece)??