The error message (out of memory) is a client-side error. It's not SQL Server that's running out of memory, it's the client application (Management studio). There's no option in SQL to run a query and discard the results. SQL will send the results to the client app, what that client app does with the data is its business.
If you don't want the stored proc to return results, then remove the select that's returning results from the procedure.
Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability