The teams have reached an agreement in principle on the deal, which would unite O'Neal with Cavaliers superstar LeBron James, the NBA's MVP.
O'Neal will join Cleveland in exchange for center Ben Wallace, guard Sasha Pavlovic, a second-round draft pick and cash, said the person who spoke on condition of anonymity because the league still must approve the deal.
The teams have been talking about the possible swap for months and finally completed it one day before the NBA draft.
The 37-year-old O'Neal, who has won four NBA titles, had one year left on his contract with the Suns. Phoenix acquired him from Miami in February 2008.
He averaged 17.8 points and 8.4 rebounds last season and appeared in his 15th All-Star game.