Before you started throwing parts at it did you check the GM service manual and diag it? Or did you take a multi meter and do some tests?

Did you hook a scanner up to it to see if it's misfiring and if so which cylinder?

Have you tried doing a compression test on it yet?