How to prevent duplicate URL patterns and not have "-#" appended to the URL alias?
As Clive mentions, Pathauto does not have a configuration to disable uniquification (suffixing "-#"). 

If you look through the main function that builds paths, pathauto_create_alias() you can see that the only way to prevent pathauto_alias_uniquify($alias, $source, $language) from running would be to trigger one of the scenarios in which pathauto gives up on alias creation (e.g. empty pattern, updating an existing alias, etc.) which wouldn't help where you need it still generated in some cases.

Your best bet to cover this scenario is to have a custom node validation function execute pathauto_create_alias()'s logic with $op = 'return' to see what the generated alias would be  before generation, and throw back errors upon duplicate uniquified paths.