After you've checked all the other stuff. You can think about a partially clogged cat.
Had similar issue with my BL. Replaced, wires,coil pack,plugs etc. Only to find that the front o2 sensor had gone, causing a lean run condition. excess fuel eventually degraded 2nd cat to where it was clogged.
You can check by just disconnecting header from exhaust pipe (only 3 14mm bolts). If engine revs freely after this you 've found your problem.
I just took section out to a shop and they had to cut the pipe, gut the cat and then reweld.
Wish you the best.
O.