Okay, now that I've looked into it further, it is the prepending of a new line (or anything) in the sentence template for the role that makes the [person] variable think that it is not the beginning of the sentence so it does not capitalize the pronoun. It has nothing to do with [Person] vs [person]. A solution is to replace [person] with [person:Proper] or [Person:Caps] when [person] is the first non-white space character in the sentence template. If you are going to the trouble of customising event sentences to have leading line feeds, that is the time to edit the [person] variable. Another solution is to reorganise the sentence template to begin with a clause or literal that you control for capitalisation so that the name-cycling [person] is always later in the sentence and the lower case pronoun is correct. And another is to change all instances of leading [person] to have modifiers that are insensitive to where the variable is, e.g., ;first, :last, :nick, :full... And a final one is to turn name-cycling off, if you can stand the repetition. Jerry Bryan pioneered the point-form narrative which eliminates the name (and other repetitive verbiage) from the person's section except as a heading.
In answer to your questions:
1. The standard built-in sentence templates generally use [person] at the start of the sentence. There is no reason that it should be first, except for Birth or the very first fact for the person as that controls the narrative heading (a silly design).
2. Prepended white space is causing your [person] to come out "he" or "she" where you want it to be "He" or "She".
3. No easy way to change all sentences; aptitude for SQLite can facilitate such mass changes with outboard tools.