Is the cam timing the problem, or something else?

I agree with the other about the camshaft timing......BUT......since you can do it basically without doing ANY engine work, put a decent timing curve in it first, JUST TO SEE. Sometimes that alone can wake one slap up. With cylinder pressure that low, I would try 20 degrees initial with 34 -36 total and you want that total to be "all in" by 2500 RPM. I don't think there's any chance in the world it'll spark knock, so try that and see how it does. You can temporarily see if it will help by simply pulling in 20 degrees initial timing and doing a test drive. Report back when you've done that and if you want to continue further, we can help you pull the distributor, disassemble it and put a good curve in it. If you want to go ahead and tear into it, you can do that.

If it was mine, I would work with the distributor first. You may can get it pretty responsive like it is, rather than tearing into it to change the camshaft timing.

Now, after having said all that, I'm a big advocate for getting camshaft timing right. But there's nothing wrong with trying the distributor FIRST, because you will at least learn that and then, if that doesn't give the complete results you're looking for, you can continue.
Just pull the heavy spring, 18 initial and 36-38 total. Bet It wont ping anyways. But I hear ya. It's too weak in umph, advance the cam or change to a smaller one.