Enable / Disable comment form in a module?
It looks like I can set the comment display correctly within hook_node_load(). I guess that runs a bit earlier in the process, and tells comment.module to not display the form for a given node.

Here's an example of what I ended up implementing:

&lt;?php
/**
 * Implements hook_node_load().
 */
function custom_node_load($nodes, $types) {
  foreach ($nodes as $node) {
    $node-&gt;comment = COMMENT_NODE_CLOSED; // to close comments
  }
}
?&gt;