I want to upload my sketch from my Arduino Uno board to the atmega328p controller via SPI. I have seen some of the videos uploading a sketch using UART communication, but I can't touch UART due to some design perspective, so anyone help me solve this issue. Thanks in Advance.
Can you use ICSP?
If so, you can connect an ISP programmer to the ATmega328P (you can use an Arduino board as an "Arduino as ISP" programmer if you like) and then upload via the Arduino IDE's Sketch > Upload Using Programmer feature.