Cpu has nothing to do with paint. When a cpu pre-renders a frame, it places every object, gives it shape, dimensions placement on screen etc but it's basically a wire frame. That gets sent to the gpu which adds the textures, the colors, the shading variations, anti aliasing, appearance.
So if the frame was a face, the cpu would say 'this is a nose, this is how big, these are nostrils, they go here and here, there's a shine on the left this is a zit, it's on the right over here' . That gets sent to gpu. The gpu is set for low details, so is basic geometry and puts a pink nose in the middle of the face with a couple of dark blurrs for the nostrils and a slight shadow on the right highlighting the left. Change that to epic details, the nose is cleaned up, edges are far sharper, nostrils are very evident, as is the zit and all its colors, depth, shadows, shading etc.
The info sent by the cpu is exactly the same, it's on the gpu to decide how to deal with them. How to organise and paint the picture. Changing graphics details doesn't affect the cpu, it's changing the physical details that does. Big difference between a minecraft face and nose compared to a photo realistic BF5 face and nose.
So something as simple as floating damage not only has to be calculated, but also has to be placed on the screen, moved around, added to, changed etc and that's work for the cpu to do, the gpu just has to put the graphical numbers up and paint them red. Disable that feature, and the cpu doesn't have to go any farther than the calculation of damage per frame as that's a game code option. It's slightly different than the zit, because there's no option to disable the facial features, so the cpu still has to render it, whether or not the gpu needs to deal with it.
So cutting back on Some settings can be beneficial to the cpu, but whether or not textures are loading isn't one of them, that's on the gpu. High cpu usage isn't going to change that. Could be gpu drivers, storage glitches, or other things.
An i7 will help, definitely won't hurt, just because the cpu will have extra resources to work with, background and windows tasks no longer need to take up space on the 4 threads of the i5. The i7 has larger Lcache, faster clocks etc.
Everything goes through the cpu, has to. What DirectX does is label things. So at first, cpu can say 'mine' or 'not mine' and send stuff directly to the gpu or keep it and deal with it. That too takes up space, resources.