Try closing all monitors except ryzen master, idle voltage should drop below 1v. 3rd gen relies heavily on sleeping threads rather than downclocking them. If a monitor such as hwmonitor / cpuz polls the thread for its voltage/clock it will wake it up. It's called observation effect/bias. On my phone at the moment but can help more later. This post should help you out but give me a shout if not: https://www.reddit.com/r/Amd/comments/cbls9g/the_final_word_on_idle_voltages_for_3rd_gen_ryzen/
As somebody said before; if you're new to programming then your main focus should be learning 'programming' rather than a specific language. I'd recommend doing the codecademy course on java. It has many similarities to C++, and the knowledge of programming learnt is equally applicable.
Through my speakers I couldn't tell the difference between 128 and uncompressed, yet with headphones the difference was huge. Not surprising by any means, but interesting to know that about my current speaker setup.
I'd advise against using a hair dryer or other 'artificial' speed increases. I'd put it in a lunchbox or similar with rice for two days, then leave it in a sensible place for a further day.