Does a varchar column in be eliminated in a 3NF database?
If there are a lot of rows with customizations, I might keep the name column in the main table.

If on the other hand, only a small percentage of the rows in the main table ever contain a customized name column, I might consider making a related table to store the name column.  

For instance:

IF OBJECT_ID(N'dbo.CustomName', N'U') IS NOT NULL
DROP TABLE dbo.CustomName;
IF OBJECT_ID(N'dbo.Main', N'U') IS NOT NULL
DROP TABLE dbo.Main;
CREATE TABLE dbo.Main
(
    MainID int NOT NULL IDENTITY(1,1)
        PRIMARY KEY CLUSTERED
    , LastName varchar(30) NOT NULL
    , FirstName varchar(30) NOT NULL
) ON [PRIMARY];

CREATE TABLE dbo.CustomName
(
    MainID int NOT NULL
        CONSTRAINT PK_CustomName
        PRIMARY KEY CLUSTERED
        CONSTRAINT FK_CustomName_MainID
        REFERENCES dbo.Main(MainID)
    , CustomName varchar(30) NOT NULL
) ON [PRIMARY];

GO

INSERT INTO dbo.Main (LastName, FirstName)
VALUES ('Vernon', 'Max');

INSERT INTO dbo.CustomName (MainID, CustomName)
VALUES (1, 'Maxwell Vernon, Esq.');


The output might look like:

SELECT m.MainID
    , [Name] = ISNULL(cn.CustomName, m.FirstName + ' ' + m.LastName)
FROM dbo.Main m
    LEFT JOIN dbo.CustomName cn ON m.MainID = cn.MainID


+--------+----------------------+
| MainID |         Name         |
+--------+----------------------+
|      1 | Maxwell Vernon, Esq. |
+--------+----------------------+


For a main table with only a small number of rows, this might not be worthwhile, however if the Main table is very large, and the number of customizations is relatively small, this technique may be something worth investigating.