Well since Mario has small reach, compare to the Fire Emblem Characters, he can still space them out. Use his fireballs and pivot fireball to space. I swear fireballs looks useless but it has such great properties. Also practice Mario's pivot Back Air. Its one of his GET THE F*CK OF ME kind of spacing. Since you say, you shield a lot, simply try not to. I know it sounds too simple, but the reason you are shielding a lot is because they are spacing you with their weapon.
Quite Frankly I think you worry about it too much so you rely on shielding. This is perfectly natural. Every player has their worrysome state. As a Mario main, swordsman and other longer reach characters have also concerned me. But as soon as you get use to the matchup, you will get comfortable with him. You start to have a plan in motion when you face a fighter who has better reach than you.
For example picture a battle in motion. Marth vs Mario. Marth has better range and kill potential. (Tip can kill as low as 70% if F-Smash tip depending on weight) Mario on the other hand has great combo potential, follow ups and fake outs.
Battle has just started and both of you are at your starting sections. You try to run up to Marth and grab him, but Marth Ftilts, so your options are to either block or spot dodge. If spot dodge, since Marth Ftitlts is still in motion, go for the grab and do as much follow ups. I prefer to start the battle by jumping high into a pivot fireball and short hop into another fireball and chase after it. Therefore there are two hitboxes chasing your enemy. The Marth player has an option of either shielding, jumping, or taking the flames. If Marth decides to jump, then read the jump and do an aerial. If he blocks go for the grab. If he takes the flames then still go for a grab and do as much follow ups. This will rack up damage. Although don't do this fireball method if you are to close to your opponent. You will suffer landing lag. This is great from a distance.
So sorry for the long response but I hope this helps.