I have done: defaults write com.macromates.textmate alwaysFindInDocument 1
      However, I am still experiencing the problem. I was searching for a string in a source, switched source, search again (the focus was not on the search panel anymore, I bring it back by doing cmd-f). Tried the search again, and the search panel was in selection type search. It was not finding anything until I changed to document type search.

I have not seen this problem when switching source files.  
Did you quit TextMate before running the defaults command?