SQL Server - Alter table vs drop and create
I recently did this in my organization wherein we wanted to handle a table with billion + rows.

All the credit for the idea goes to Aaron Bertrand and is from his blog post Trick Shots : Schema Switch-A-Roo

Test below process on a small table and get your self comfortable before doing it in PROD.


create 2 schemas fake and shadow with authorization dbo.
Create a table with the columns and data types you want in shadow schema e.g. create table shadow.Correct_Table ...
Insert the data and create all the indexes that the original table has in the shadow schema table. 
This way you have identical copies of table with data and indexes but they are in different schemas (logically separated). 
Once done update stats on the table with shadow schema.
Switch the schemas (This is a metadata operation and is extremely fast)

--- ALTER SCHEMA TargetSchema TRANSFER SourceSchema.TableName; 

BEGIN TRANSACTION;

  ALTER SCHEMA fake TRANSFER     dbo.original_table;
  ALTER SCHEMA dbo  TRANSFER  shadow.Correct_Table;

COMMIT TRANSACTION;

ALTER SCHEMA shadow TRANSFER fake.Lookup;

Do a final check to see if everything went as planned. You should do a select count(1) from dbo.Correct_table
Once step 7 is confirmed and you are happy, drop the shadow.table, shadow schema and fake schema as clean up.