In a new post today, Arnold Daniels has posted about (and linked to) a few methods for running PHP4 and PHP5 on the same server at the same time - running them as CGIs.
You simply can't have PHP4 and PHP5 both run as Apache2 module in the same process, because they use a lot of the same internal symbols (variables, function names, etc). If you would change that, nobody would be able to write any extensions which run both on PHP4 and PHP5. However you can run multiple PHP versions as CGI modules and there is no patch required for that.
He points out an article from Giunta Gaetanos that handles it similarly, but requires the filename to match a certain pattern to determine which to use. He suggests a slightly different alternative, namely using different IPs for PHP4 vs PHP5 and use DNS to route the domains to the right locations.