I know what you mean. When you do the first part the yarn you need to use is right there when you need it to make the bottom of the cross but when you do the horizontal part of the cross you need the red yarn but it is not there. No one ever seems to address this issue and I have never known what you are really supposed to do but here is what I do.
On the last row before you are going to need the red where it isn't I carry the red along when I do the white until I get past where I'm going to need the red. Like this... You have been knitting 6 white and then you do the 5 red and then 6 white. On the last row like that before you need to begin doing 3 white and then 11 red--- knit your 6 white, then the 5 red and then start with the white again but after every 3 stitches or so work so that the red ends up behind the white so that it is not knit but caught up and carried along. Keep doing that until you are only 1 or 2 stitches from the far edge when you catch the red up the last time. Now turn and start back with the white for the 3 stitches and then begin your red (be sure to pick up the new color so that the yarns close any gap) which is now a little off to the right of where you need it and you can use it more easily.
Whenever the new color is not going to be where you need it, on the row before, arrange to put it where it will be needed so you can get to it. That is what I do. I know with strongly contrasting colors like red and white that a little bit may show though when you carry a color but it can't be helped unless you decide to just use duplicate stitch and embroidery your cross on which is another viable option.
There are sites that show how to catch in the yarn to carry it along. I have one I could point you to, but it is a little complicated for a new knitter. A simple way is just to lay the yarn to be carried over the working yarn every few stitches, before you knit with the working yarn.
I hope this helps.