There are propriety products on the market; Holts sell a radiator flush product in the UK for instance. Citric acid crystals can be bought from the chemists, (drug store), and should deal with limescale after a soak. A 10% Sulphuric acid mixture would be quicker but needs a lot more care in its use and disposal.
While the radiator internals may look clean, and lets face it you can’t see much through the various ‘sposed-to-be-there holes’, it is still possible that there are fragments of rubbish trapped in the small tubes. The water in your picture looks fairly rusty coloured so there might be some larger flakes. Also vandalism is not just a 21st century thing and there has been plenty of time in the bikes life for enterprising imps to insert foreign objects for fun or malice.
From what you have written, engine clean, pipes OK, etc. it would suggest that the problem can only lie in the radiator core although short of a well trained mouse with a miniature video camera its going to be hard to know for sure other than taking a tin opener to it! The only back yard test I can think of is to invert the radiator and feed a known quantity of water into the top hose fitting from the same height as the difference between the radiator and the engine and time how long it takes to stop flowing out of the bottom fitting. If it proves to be slow you will know you have a problem. The down side is that we have no benchmark and such a test is likely to be fairly insensitive. I will try it on my radiator and see what happens, (it is off the bike so its not a problem); at least then there will be something for a comparison.