This is bizarre. I'm going to describe the problem as verbosely as possible so it will hopefully be clear exactly what's going on:

I have a main "functions.php" file that I require_once() on every page of my site.

In functions.php, I require_once() a file called vars.php.

Also in functions.php, there is a single function that uses ob_start("ob_gzhandler")

Everything works fine so far. However....

If I try to include another file in functions.php, my pages won't load and give an "invalid or unsupported encryption" error.

Somehow, even just copying vars.php, renaming it, and requiring the newvars.php file from functions.php still causes the error.

Permissions on the files are the same. Nothing relevant in .htaccess either.

However, if I comment out the ob_start("ob_gzhandler") from the function that uses it, everything is fine.

What in the world is going on here? It seems completely illogical and unreal.