Combining diacritical marks are improperly positioned for Cyrillic capital letters. See the attachement https://savannah.gnu.org/bugs/download.php?file_id=24729 of bug report https://savannah.gnu.org/bugs/index.php?35225 This concerns 26 different uses of combining diavriticals marks. Aparently it works correclty in HTML but not in XeLaTeX with fontspec with FreeSans, FreeSerif or FreeMono, all regular. Can you reproduce the problem?
Do you have a file to test? and what version of the fonts you are using? In either case, it is very unlikely this is a fontspec isasue, such stuff is handled by the engine itself, fontspec merely tells it what fonts to use and what features (other than defaults) to activate.
I'm using FreeSans revision 1970 from svn
(that file and next file are also in an email to you)
Looks like the mark positioning is registered only with Cyrillic script, using Script=Cyrillic fixes positioning for all marks but the third (that might be a font bug). Nothing for us to fix here, either use the option above or ask the font developer to register the marks for Latin script as well (many fonts do that for wider compatibility with different applications and uses e.g. Russian word in the middle on English text).
This solves it indeed except for the circonflex. Reporting that at the font maintainer. Thanks.