In a small saucepan, combine sugar and cornstarch. Stir in milk until smooth. Cook and stir over medium-high heat until thickened and bubbly. Reduce heat to low; cook and stir 2 minutes longer. Remove from the heat. Stir a small amount of hot filling into egg yolk; return all to the pan, stirring constantly. Bring to a gentle boil; cook and stir for 2 minutes. Remove from the heat; stir in vanilla. Cover and refrigerate.
Meanwhile, in a large bowl, cream the butter and sugar until light and fluffy. Beat in egg yolks and vanilla. Combine the flour, baking powder and salt; gradually add to creamed mixture alternately with milk and mix well. Spread into two greased and floured 9-in. round baking pans; set aside.
In a small bowl, beat egg whites on medium speed until foamy. Gradually beat in sugar, a tablespoon at a time, on high until stiff glossy peaks form and sugar is dissolved. Fold in 1 cup nuts. Spread meringue evenly over batter. Sprinkle with remaining nuts.
Bake at 325° for 35-40 minutes or until meringue is browned and crisp. Cool on wire racks for 10 minutes (meringue will crack).
Carefully run a knife around edge of pans to loosen. Remove to wire racks; cool with meringue side up. To assemble, place one cake with meringue side up on a serving plate; carefully spread with custard. Top with remaining cake. Refrigerate until serving.