Why can't Homomorphic encryption schemes support algorithms with conditions/branching?
I think you have a misconception.  Fully homomorphic encryption can support algorithms with conditions and branching.  Any such efficient algorithm can be unrolled to be implemented as a circuit (say, with just AND and NOT gates), removing all conditions and branching, and thus can be implemented on encrypted data using fully homomorphic encryption.

Of course, fully homomorphic encryption schemes are hardly practical right now; search this site for more details.