You are probably here to get some hope. Politically correct it would be to give you that hope because we all know that "Everyone can do and be whoever he want if he work hard". Unfortunately reality is different. Sometimes false hope can make more evil than harsh truth. I am pragmatic that's why i will give you pragmatic answer. You have binary choice. You already know that you struggle with certain things. Give it more time, to the end of the year, so you can determine if the problem was not enough time to learn. If nothing will change then aim lower. If you solve software development problems as you mentioned then you can get into software development.You don't need to work for top 4 tech companies to be happy and solve interesting problems.
I have to include considerations about the survival of my clan which is more important than some aspects of my day-to-day happiness.
If you do not enjoy programming, and have a hard time struggling with analyzing and solving problems (writing algorithms) then I do not think you will enjoy your work.
I have seen plenty of developers that do not enjoy their work, and I would suggest that you avoid it, and stay with systems administration, or something else that you enjoy.
There is a considerate amount of stress and pressure in the job anyway, as there are always critical deadlines and urgent problems, and if that is added to a general negative baseline of stress and discomfort, there is a high risk of real problems - like developing a real depression or occupational burnout.