How bad of a decision is this...?

Actually, each tile in your map has a unique index, too (y * numColumns + x). So, each step on the path can be the id of the next tile on it.

Well, maybe that is the same thing you meant, anyhow I think you get it. Good luck!