Apparently the staff(or whoever does any vetting) was correct. TR gave this speech before the House Immigration Subcommittee on Sept. 29, 1907; But the date doesn't change the substance and importance of the address.
I think the reference to the red flag was a reference to anarchists, Marxists, and violent revolutionaries of every stripe and variety. Remember - the first Russian Revolution was in 1905 and Marxists played a role in it. This was closely watched in the U.S.
Also, McKinley was assassinated by a foreign anarchist in 1901 when TR was Vice President.
Actualy what you say is a well documented urban legend:
http://urbanlegends.about.com/library/bl_roosevelt_on_immigrants.htm
Emails about the Immigration Subcommittee thing have gone around for a while.
Regardless: we agree... Great statement by T. Roosevelt. The Republicans would be cruising to victory right now if they abided well what he said!