Richard-TX started to give the answer to your question, but it looks like he didn't complete the thought.
As he stated, the resolution of the ADC at 3.3v is roughly 3.2mV per count. If you connect the sensor directly to the ADC pin, at 30mV the ADC will register 6 (30mV * 1023 / 5v). At 50mV, the ADC will register 10. You'll likely get a little bit of noise as well. This is likely to give you very terrible results.
To help, you can use a non-inverting amplifier
. If you are not familiar with op-amps, don't let that page intimidate you. You just need an op-amp, two resistors, and a small capacitor (the capacitor isn't show, but goes on the power supply for the op-amp). There are two resistors shown on the diagram, Rf and R2. Gain is 1 + Rf/R2. In other words, if Rf is 9k and R2 is 1k, then your gain is 1 + 9k / 1k = 10.
You'd take your output from your CO2 sensor and connect it to the + input of the op-amp. The output of the op-amp would then be 10 times the output of the CO2 sensor. The range would then be 300mV to 500mV. At 300mV, the ADC would read 61 counts and at 500mV the ADC would read 102 counts. The difference between minimum and maximum is 41 counts, not great but much better than the 4 counts from above.
If you went with a 99k resistor for Rf, then your gain would be 1 + 99k / 1k = 100. The output would be 3v to 5v, and your ADC would read 613 to 1023, or roughly 400 counts of difference.
This is all theoretical stuff here. With a gain of 100, you'd be enticing your op-amp to output 5v at the maximum sensor output. If the op-amp is powered from 5v, many of them won't do it. Some of them will actually invert and output 0v (assuming the negative power lead is connected to ground). So, if you go this route, check the op-amp datasheet and make sure it is rail-to-rail, verify it is accurate at the rails, or don't use a gain of 100.
Also, a gain of 100 means that any noise you have in your analog circuit will be magnified by 100 as well. You'll want to take care and filter your results to try and eliminate this noise, ideally in hardware but you might be able to do it in software as well.
Lastly, a better
op-amp solution would be a differential op-amp. They are a good bit more complex than the one I linked you to, and in order to be precise they require matched resistors.
A better solution with less headache would be to find a sensor with a higher output value.