Sublime's command line behaviour is less than ideal presently. My biggest gripe is that it insists on loading up the last project / default project / last tabset regardless of how it's launched, and there seems to be no easy way to stop that behaviour. This is great for GUI use, but a PITA for more traditional terminal-style launching and use.
By way of answering the OP's question, the easiest way to achieve what you want is to use the following command, assuming 'sbl' correctly passes commandline params to sublime_text.exe:
sbl --add . filename.txt
Note the space between the . and filename.txt. The above command opens the current folder and
the specified file in the current sublime window; this allows you to use ctrl+p to use fuzzy searching for any file in the current folder branch as well. The only problem is, when you close sublime, it will remember the added folder-set, so if you do this often, you'll need to remove it manually before closing sublime (PITA imo).
A workaround (which I didn't try yet) could be to create a blank project, save it somewhere and set the project files as read-only in the OS. Then launch sublime with the --project command to load up that project, along with the --add . filename.txt param above. Most of this could be aliased out with powershell or equivalent, so this might be a workable solution.
Best would be if Jon could add a commandline option to sublime "--oneoff" that launches a separate sublime process, without loading any previous tabs/projects/folders, forgets everything upon quit, and automatically disables "hot_exit" so that any unsaved files require confirm from the user upon quit.
My current workaround to these headaches is to have two copies of sublime; one for development and one for general editing, but this isn't ideal either as I constantly have to keep settings, packages etc. in sync.