How do I prevent sharing contacts between two iPhones without opening a new account?
Having


several iOS/OS X devices signed in to the same iCloud account
contact syncing enabled in the respective settings


always syncs your contacts on all these devices (that's what iCloud syncing is all about in a way).

In your situation you could


disable syncing of Contacts e.g. on the business iPhone (in Settings)
create different contact groups for private and business contacts and then just use those on the respective phones (all contacts would still be synced though)
create a separate iCloud account for the business iPhone (which actually might have other benefits depending on your employment status, who payed for the phone and the mobile contract etc.)