I think your best bet would be a GPS. But when you take the measurement use the distance the GPS tells you directly. Don't download the track and use Google Earth or something else to tell you how long the track is. Even at their highest resolution settings GPS units save a smaller number of track points than they use internally to calculate the distance.
The added distance due to elevation changes is almost always trivial. Your course would have to have a constant grade of 5% for the error due to elevation change to be about the SCPF, or 0.1%. A constant 5% grade is a monster course. It's unlikely your course, even if it's a trail course, is this hilly.