If the cam chain skips a tooth, the cam index would be opposite (late) that which is shown in the picture, with the dowel pin pointing off toward your right as you view it. It doesn't look quite right if that is where it sits when the crankshaft is at TDC, though: if someone had the engine apart and mis-timed the chain a tooth, it could be advanced one. This would indeed make it really hard (near impossible) to make the spark timing correct.
Speaking in engineering-ese: when the cam chains get worn, the design is for the cam timing to start running a little bit late so it will not cause the intake valve(s) to open sooner than they should: this could cause piston-to-valve collisions at high RPM. Instead, when the chain stretches out the valves open slightly later. The points also open slightly later, which tends to make the engine not reach redline speeds easily.
If your cam is indeed a tooth 'early' then setting the ignition timing statically will result in very small points gaps, and setting the gaps to specification will cause very early (advanced) spark timing. Too-small points gaps (less than 0.012") causes very burnt points because they then will not open far enough to stop the arcing. That could explain why they burned so much, if they have low miles. Normally the 350 uses a set of points in about 8,000-10,000 miles.
It is easy to mis-time these engines when they are being reassembled, I've done it myself!