I'd say use CDC as that will require no changes to any existing table that already has a unique index. Presumably the vast majority of your tables already have at least one unique index. That said, the existing system procs for use with CDC are, well, frankly, not good. In fact, they're so annoying and bug prone, I've developed my own that are much easier and more intuitive to use. Bug prone in that they are so finicky you have to be perfect about everything you send into them ... and people just aren't that perfect all the time.
Instead, using temporal tables, and thus having to adding all those columns to the table, will indeed cause massive performance changes. It's extremely likely to cause page splits all over, so you'd have to rebuild all the tables. That alone could cause a lot of disruptions to normal database activities.
SQL DBA,SQL Server MVP(07, 08, 09) Prosecutor James Blackburn, in closing argument in the Fatal Vision murders trial: "If in the future, you should cry a tear, cry one for them [the murder victims]. If in the future, you should say a prayer, say one for them. And if in the future, you should light a candle, light one for them."