Hey guys,
I managed to solve my problems with finding TFrozenDict and everything seems to work now (grc, the ctrlpot monitor, perf monitor, etc).
I was going to clone the apache-thrift library directly into my gnuradio installation and build (manually replace thrift), but before I messed any gnuradio stuff up, I manually copy and pasted the class from the src code into Thrift.py (where TFrozenDict is declared, initialized, and defined in the most up to date source code). That solved the ImportError; I also had to make a slight adjustment to TBinaryProtocol, had to a function readBinary to it (again, copy and pasted from the source code). This solved the issues. I basically found what needed to be updated by looking at the error output of gr-perf-monitorx, and comparing lines referenced to source code elsewhere.
I am going install gnuradio again in a separate directory using pybombs and then manually install thrift. I think there might some type of bug or missing dependency with PyBOMBs (I am however, using an older version of PyBombs, which could explain this) that can't install all of apache-thrift's dependencies, and then not installing thrift properly. That said, when I run "gnuradio-config --enabled-components" I see "* thrift" in the output, which the documentation and previous emails on the list say indicates that thrift's backend was installed properly, fully.
If anyone was interested about the RFNoC blocks, my assumption that the performance monitor would work but not say anything about the blocks was true. The only blocks from RFNoC that will show up in the GUI or the CtrlPort Monitor is whatever one is connected to the PC. In other words, which block(s) on the flowgraph connect to non-RFNoC blocks. It will show the buffer and runtime of the blocks.