Do you suggest I remove the startup apps as well before I try this?
I would do as-is to capture your current state and then try without them -- especially if your %idle is <98% with the startup apps loaded. If your system isn't very idle as configured with regular applications running but then actually runs idle when you remove your startup apps, then you know to look further at those to see if they are justified and/or need fixing/updating. If not idle in either case then you know you have more investigating to do.
EDIT: Also, I would love to see your activity monitor!
Here is the top rows + top 10 processes about 2 hours after boot from some testing I was doing with Monterey on my Mac Mini back in December:
Processes: 325 total, 2 running, 323 sleeping, 995 threads
Load Avg: 0.83, 0.89, 0.91
CPU usage: 0.7% user, 0.17% sys, 99.75% idle
SharedLibs: 453M resident, 80M data, 35M linkedit.
MemRegions: 21626 total, 700M resident, 166M private, 339M shared.
PhysMem: 4362M used (1428M wired), 3829M unused.
VM: 10T vsize, 3153M framework vsize, 0(0) swapins, 0(0) swapouts.
Swap: 0B + 0B free.
Purgeable: 51M 342(3) pages purged.
Networks: packets: 34241/3664K in, 18769/3193K out.
Disks: 65883/1240M read, 24180/441M written.
PID | COMMAND | %CPU | TIME | #TH | #WQ | #PORTS | MEM |
0 | kernel_task | 0.3 | 00:18.8 | 207/4 | 0 | 0 | 114M- |
141 | bluetoothd | 0 | 00:04.2 | 8 | 4 | 215 | 3216K |
1128 | top | 0 | 00:00.2 | 1/1 | 0 | 27 | 2236K+ |
1 | launchd | 0 | 00:04.1 | 2 | 1 | 1706+ | 13M |
235 | airportd | 0 | 00:01.4 | 9 | 7 | 188 | 2940K+ |
472 | sharingd | 0 | 00:01.4 | 3 | 1 | 221 | 6052K |
133 | distnoted | 0 | 00:01.0 | 2 | 1 | 135 | 440K |
402 | distnoted | 0 | 00:01.1 | 2 | 1 | 253 | 652K |
148 | cfprefsd | 0 | 00:01.4 | 2 | 1 | 482 | 768K |
82 | logd | 0 | 00:01.3 | 2 | 1 | 1008 | 4112K |
Note the above is with the -s 60 option to top and after at least two refreshes (the first two refreshes of top are cannon fodder since it is measuring itself for a lot of those first two iterations).
P.S.Switching from Activity Monitor to top(1) for debugging this since you seem pretty technical and top has less overhead while giving more control over the refresh speed.