PWM is a way to prevent over charging a battery. As the state of charge approaches 100% the pulses become shorter and shorter.
MPPT uses PWM but when in bulk charging mode selects the voltage and amperage that will produce the greatest wattage. It also contains a dc to dc device to essentially turn "extra" voltage into greater amps of output. A good MPPT controller will export more amps than what the panels are rated for.
Why doesn't everyone use MPPT? Because it is far more complex and therefore more costly to produce. When panels cost $5.50 per watt, it was worthwhile. But now with panels often being under $1 per watt it is more cost effective to use PWM. In larger systems MPPT can still make sense. Or if there is no room left on the roof and you wish to extract every watt MPPT may be used to do so. MPPT may be (no proof, sorry) better in shade, and is better in the so called "shoulder" hours when solar conditions are not ideal. It is ironic that nominal 12 volt panels now cost more than higher voltage panels. If the system is large enough then MPPT can be cost effective.
Where I live temperature compensated charging is needful. MPPT tends to have that feature. It is possible to get a PWM that does that too.
Another area is load diversion. That is more often available on PWM controllers. The idea is to divert power from the battery banks when they are almost full to some other task, such as water heating.
Decide on a budget, decide how may watts you want (remember, it is a battery charger, so look at the amp-hours of battery bank to be serviced). Now choose the controller technology that meets your needs.
If you plan on using an inverter much at all, then totally populate the roof with panels and go directly to MPPT. Why? Because a 300 watt load translates to 30 amps. 30 amps for 24 hours is quite an accomplishment for an RV solar system. It would need about 1440 watts of panels.