I know how to reference an existing .dll to IronPython, but is there any way to add my project as a reference like I can between Visual Studio projects?
Or is it best practice to create a separate class library?
You can't add reference to a project since it's a Visual Studio thing. 
I suggest that during the development process, call import (IronPython) or require (IronRuby) with the full path of your project assembly like c:\dev\MyProject\bin\Debug\MyProject.dll.
Any way to add my C# project as a reference in IronPython / IronRuby?