XNA is designed around the content processor pipeline and
SpriteFont resources are designed to make use of that. There are really no good ways to circumvent that.
You could create a separate project that used a content project to generate and load the sprite font, and then use reflection to access the
SpriteFont object's private members, including
textureValue (which is a
Texture2D) and spit them out to some format you can parse yourself. But that is really a bit heavy-handed, and at that point not much different than using a third-party, API-agnostic bitmap font generation tool (like BMFont).
Plus it still uses a content project somewhere in your pipeline. Your best option if you really don't want to make use of XNA's content pipeline is to find third-party tools.