OK, I think I've found the culprit.
Before packaging the scene I decided to go through it node by node and discovered that a high-frequency surface shader (that I put together months ago) included a reflective node. Ray-traced reflections were enabled but not needed, so I disabled those. The surface shader is extensively used, so this small change made a big difference in rendering time.
Canceling renders now seems not to be a problem now, either, though I haven't tested that yet on any large renders.
While I was at it I also checked all of the PF octaves in the scene and lowered many that were unnecessarily high. That may have helped, too.
Thanks again, Matt, for offering to take a look. But, fingers crossed, I think this is fixed.