Sorry for the super long reply.
That actually looks like a pretty good routine.
This is my story and your situation and methods/thoughts may be very different, so please just take from it what works for you and ignore the rest.
I think that a big part of the problem that is so often overlooked, is that as a Mother of a 7 month old you are now basically running on empty and everything can seem overwhelming. You getting sleep, or at least some rest, at this point is as important, if not more so, then for your baby.
You know your baby, you know you and hopefully you have a supportive partner. If so, now is the time to lean on them, to give you some breathing space. Honestly, even if there is only one day a week when you can rely on them to look after the baby, whilst you are in control of what you want to do, when you want to do it, can make a massive difference.
I think you are being too hard on yourself, but I so remember how hard it was with my first. We co slept until he was 7 months old and he never slept through the night before then.
I had to go back to full time work at the end of 6 months, by the end of my first month back at work I was broken and ME, not him, went cold turkey one night. It was sheer desperation on my part.
I lay in bed hearing him cry, whilst watching a film on TV through headphones, to try and soften the sound somewhat. As the credits rolled there was silence. Part of me thought he might be dead, but I could hear him breathing on the baby monitor.
I went up to his room at 7.00 am expecting to find some sort of traumatised baby who would hate me. No. Happiest, smiliest thing.
From that night it was pretty much plain sailing. I fed him in his room in the dark, with me listening to the radio on headphones. Sitting in the dark feeding a baby with nothing to do makes it seems twice as long. Listening to something on headphones did not disturb him and made the time go so much faster for me. Once he was sleepy, but not asleep, I put him in the cot, shut the door and left.
The most challenging thing is going to be to change the habit of not putting him into his cot to go to sleep. It's horrible to hear your baby cry, but if they are fed, changed and in a safe and dark space, then a little time learning to self sooth is not going to harm them.
If he is sleeping through the night and you currently co sleep, I would try to make the morning nap the first one you change to cot only. He's been fed, milked, played with and has had a decent amount of sleep.
Give him a kiss and a cuddle for a few of minutes, use a soothing voice, put him in his cot, shut the door and leave to as far away as possible from him in your home.
Lie down and try to rest if you can. Do not try to catch up on chores, unless that distraction helps and you are more energetic in the morning.
Use some headphones and listen to whatever you find most relaxing. Do not go back for 15 mins. If he is still crying, pop in and just use your soothing voice for a few seconds. Do not pick him up. Repeat this once again after another 15 mins and then when 45 mins is up, go in, get him up and go about your day.
Do not change anything else until he is able to take his nap in his cot in the morning.
Leave the first afternoon nap as it is. It's good for you to get out and it seems to work for your baby too.
The second afternoon nap was always a problem for me. As I was at my lowest energy wise then.
You say he doesn't like to be held for that nap and hates the cot, so you often push the pram around the house.
Try going out for that nap as well. Do not push yourself to do more than 30 mins, 20 if you are really feeling tired/or overwhelmed.
If he doesn't nap, then at least he has something interesting to look at. This was the first nap that my baby dropped.
Good luck