You used to be able to plant mushrooms on any surface, then make them grow into Huge Mushrooms using Bone Meal. This would, for some reason, convert the tile below the mushroom's stipe to dirt.
This was obviously a bug (as it would allow players to, for example, destroy Bedrock), and was fixed at some point. So no, this is no longer possible.
After a bit of testing, I think I have determined the cause of this bug. It actually has nothing to do with how far away you are from the block. In fact, it seems to have something to do with a bug in Minecraft which has been fixed known as "click mining".
When you mine a row of blocks the "normal" way, standing directly in front of them and holding forward, the system works properly. Say you're mining a row of dirt blocks with a diamond shovel. There is a small amount of delay between each block's destruction and the next block destruction's beginning. If this is hard to understand, basically the arm has to swing back up before the next block can get hit, so there's a small amount of delay.
Someone discovered this and introduced "click mining" to the scene. All you did was release/repress the mouse button after each block was destroyed. This instantly returned the arm to the "unswung" position, eliminating the delay between each block's destruction. Notch figured this out and introduced a small delay after you press the mouse button down, so it negated the time advantage of click mining.
However, when doing the method you described, the block is broken before you're in range of the next block. So really, there's a small period between each dirt block where no block is in range. This instantly returns the shovel to the unswung postion, so there's no delay between blocks. The click mining fix only adds a delay after mouse presses, and this is not a mouse press, you're just holding it down, so there's no delay. Essentially, you've found a way around the click mining fix.
As for tall grass, it still works with grass on top of it. However, you must be aiming for the bottom of the block, because if the tall grass gets in range, the swing delay is reintroduced, leaving you with the delay again.
Long story short, yes, it's a bug. Still, it's sorta useful in select situations, but those situations are rare, so it's not a really big problem.
Best Answer
Without removing, you can convert them to dirt by placing any solid blocks on top then removing them. Then you can place grass blocks anywhere within 3x5x3 box around the block you want to convert to grass, e.g. place some grass blocks 1 block above the dirt.
An especially friendly block for this procedure would be the slime block, as it's instantly placed and broken. Just place a layer of slime over the path, a couple grass blocks scattered on top of the slime to 'seed' the grass, then break the slime. If you like to live dangerously, TNT block has the same properties, just better not have any sources of redstone signal or open flame nearby.
A quick way to convert arbitrarily long flat strip of path blocks up to 10 blocks wide to dirt (then seed some grass blocks to let it convert back to grass) is using a flying machine:
You start the machine by triggering the "rear" observer relative to direction you want it to travel.