In reality good business guys are rare (like good programmers), and the good ones can get money from investors and customers with the product in it's current, incomplete state (hint: it's always incomplete, the completed, idealised version will never exist)
Poor business devs sit around waiting for stuff to be built, interview 1 or 2 customers, and then say yes to all the customer requests (even illogical, ill-thought out ones) and then sit around more until the new features are implemented.
This can be solved with hard goals.
Technical founder has hard time goals of finishing X,Y,Z by this date, and business dev founder has hard goals of revenue A,B,C by these dates.
If the business dev founder is unable to reach the goals then 100% of ownership of the codebase that I just wrote (myself) is mine, and I'll go find another business dev who can sell it.
That way I'm happy to take all the risk by investing a bunch of my own time and resources into building it up front, and then if it doesn't work out, I can find another way of monetizing that effort.
This has allowed me to kick out some useless business dev's who are all talk, and get in the guys who are going to make it happen. This strategy changed my life for the better a lot.