You mentioned in your conclusion that you were not able to tell whether the clock speed down-clocked from heat due to the CCC not displaying it. You could have used the --odgc command to monitor the clocks.
That is how I currently monitor the clocks on my R9-290X. Therefore it should also work with the R9-290.
To record while a benchmark is happening, you can use a combination of the "watch" command and the controlFlow ">>" to redirect the output and append to a file per interval.
With my R9-290X running on Uber mode, it tends to downclock once it reaches 92-94 C.
watch aticonfig --odgc >> clocksPer2Sec.txt
With Metro LL with the slider-settings maxed to the right, I observe mostly FPS between 40+ to 60+. On the surface levels with the massive storm on the bridge and the last climax level; I observe FPS of 30 to 50+.
I also observed that I could use CCC to overide the Anti Aliasing to maximum with EQ and using Edge Detect; however on levels with a lot happening, like the last climax level, the game frequently crashes. Switching to enhancing the applications AA instead of overriding it virtually eliminated the crashing.
On another note, something I found peculiar; Serious Sam BFE with ULTRA everything for performance settings, would heat up the card faster and throttle down the clocks faster than Metro LL. It was like running Furmark.