The "Curve Templates" section of a Profile or Program is how you accomplish that. Just define empty curves in the Curve Templates section configured the way you want, and whenever you use that Profile or Program in a roast, those curves will be duplicated into the roast itself as new curves ready for recording data - configured exactly the way you have them in the Profile or Program, including name, color, type, etc... even probe binding if you're using Data Logging. It's a big timesaver.
So, place your target curves that you want to match into the regular "Curves" section, and your blank templates into "Curve Templates" - the templates will be spawned in each roast. The update I'm working on now will introduce "Targeting Mode" for the roast analyzer and make this distinction more apparent. Target mode will enable you to toggle between targeting Profile/Program Curves, Past Roast Curves, All and None. Switching modes will hide extraneous curves, and show the target curves in dotted lines in contrast with the actual roast curves, shown in solid lines. I'm having a lot of fun with it.
I'll look into the issue you mentioned. That should not occur - reading curves should not bother with the max level - that's only for control curves. I always copy curves from a roast, and paste them into profiles or programs, so if there's a bug there, I missed it somewhere along the line in testing. If so, I'll fix it for the next update.