I'm beginning to think that may be your problem, too. Take it into Auto Zone and have them test it like ten times back to back to get it hot and see if it passes all ten times.
Also, if you know have a temp gun, or know someone with one, check the temp of your cat after it gives you a fit again. It shouldn't be much hotter than the down pipe. It's possible that the cat is overheating and forcing the system to run rich to try and cool it down (hence the black smoke). A fuel and/or oil saturated cat can cause excessive heat and restriction, choking the car after it's gotten hot.