This question is in a sense related to “Best way to share common code”, but the situation is slightly different in this case.
I am now coding an application, say A, for a project. It is unfinished and now a new project B, will be started and is basically a replicate of A with add-ons. As both projects are unfinished, it is likely that I will have fixes in A which I need to bring over to B; and perhaps enhancements in B which I would like to port to A too.
How should I use SVN for my situation?
Ideally, you should try not to have two copies of very similar projects in progress. That is a recipe for all kinds of trouble; trying to keep them in sync as you describe would require constantly merging back and forth, which is difficult and error prone.
Better, to build your project in such a way so that the shared parts can really be shared. Perhaps make it a library. Or perhaps, make them both one big project, with two different builds – one to build A, and one for B.